Files
boocode/.codesight/CODESIGHT.md
indifferentketchup 6fde7002aa docs: boocode-lift-analysis, openspec change docs, codesight cache, deps
- Add boocode-lift-analysis.md: comprehensive 30-repo lift matrix across 25 domains
- Add openspec/ change docs: domain2-code-intelligence, domain3-multi-agent, impeccable-wave, streaming-codeblocks
- Update .gitignore: .impeccable/, .omo/, bun.lock, DESIGN.md, PRODUCT.md
- Update dependencies in package.json + pnpm-lock.yaml
- Update .codesight/ analysis cache
2026-06-08 03:49:26 +00:00

98 KiB

boocode — AI Context Map

Stack: fastify, go-net-http | none | react | typescript Microservices: @boocode/contracts, @boocode/ion, @boocode/booterm, @boocode/coder, @boocode/server, @boocode/web, codecontext, @boocode/conductor

147 routes (9 inferred) + 9 ws | 23 models | 92 components | 296 lib files | 43 env vars | 17 middleware Token savings: this file is ~0 tokens. Without it, AI exploration would cost ~0 tokens. Saves ~0 tokens per conversation. Last scanned: 2026-06-08 03:49 — re-run after significant changes


Routes

CRUD Resources

  • /api/battles GET | POST | GET/:id → Battle
  • /api/plans GET | POST | GET/:id | PATCH/:id → Plan
  • /api/runs GET | POST | GET/:id → Run
  • /api/tasks GET | POST | GET/:id → Task
  • /api/chats/:id/messages GET | POST | GET/:id | DELETE/:id → Message
  • /api/projects GET | POST | GET/:id | PATCH/:id | DELETE/:id → Project
  • /api/sessions GET/:id | PATCH/:id | DELETE/:id → Session

Other Routes

fastify

  • GET /api/term/health params()
  • GET /api/term/sessions/:sid/panes/:pid/search params(sid, pid) [auth]
  • GET /api/term/sessions params() [auth]
  • POST /api/term/sessions/:sid/panes/:pid/start params(sid, pid) [auth]
  • POST /api/term/sessions/:sid/panes/:pid/kill params(sid, pid) [auth]
  • GET /ws/term/sessions/:sid/panes/:pid params(sid, pid) [auth]
  • GET /api/health params() [auth, db, queue, ai]
  • GET /api/sessions/:sessionId/agent-sessions params(sessionId) [auth, db]
  • GET /api/analytics/summary params() [auth, db]
  • GET /api/analytics/sessions params() [auth, db]
  • GET /api/analytics/token-breakdown params() [auth, db]
  • POST /api/battles/generate-prompt params() [auth, db]
  • POST /api/battles/:id/stop params(id) [auth, db]
  • GET /api/battles/:id/analysis params(id) [auth, db]
  • POST /api/battles/:id/analyze params(id) [auth, db]
  • PATCH /api/battles/:id/winner params(id) [auth, db]
  • GET /api/battles/:id/contestants/:cid/diff params(id, cid) [auth, db]
  • POST /api/battles/:id/cross-examine params(id) [auth, db]
  • GET /api/sessions/:sessionId/checkpoints params(sessionId) [auth, db]
  • POST /api/sessions/:sessionId/checkpoints/:checkpointId/restore params(sessionId, checkpointId) [auth, db]
  • GET /api/inbox params() [auth, db]
  • POST /api/inbox/:id/retry params(id) [auth, db]
  • POST /api/chats/:chatId/close params(chatId) [auth, db]
  • POST /api/sessions/:sessionId/close params(sessionId) [auth, db]
  • GET /api/sessions/:sessionId/messages params(sessionId) [auth, db, queue]
  • POST /api/sessions/:sessionId/messages params(sessionId) [auth, db, queue]
  • POST /api/chats/:id/answer_user_input params(id) [auth, db, queue]
  • POST /api/sessions/:sessionId/stop params(sessionId) [auth, db, queue]
  • GET /api/sessions/:sessionId/pending params(sessionId) [auth, db, queue]
  • POST /api/sessions/:sessionId/pending/create params(sessionId) [auth, db, queue]
  • POST /api/sessions/:sessionId/pending/apply params(sessionId) [auth, db, queue]
  • POST /api/pending/:id/apply params(id) [auth, db, queue]
  • POST /api/pending/:id/reject params(id) [auth, db, queue]
  • POST /api/pending/:id/rewind params(id) [auth, db, queue]
  • GET /api/plans/active params() [db]
  • GET /api/providers/snapshot params() [db, cache]
  • GET /api/providers/config params() [db, cache]
  • PATCH /api/providers/config params() [db, cache]
  • POST /api/providers/refresh params() [db, cache]
  • GET /api/providers/:id/diagnostic params(id) [db, cache]
  • POST /api/runs/:id/cancel params(id) [auth, db]
  • POST /api/sessions/:sessionId/skill_invoke params(sessionId) [auth, db, queue]
  • GET /api/stats/costs params() [auth, db]
  • POST /api/tasks/:id/cancel params(id) [auth, db, cache, ai]
  • GET /api/tasks/:id/permission params(id) [auth, db, cache, ai]
  • POST /api/tasks/:id/permission params(id) [auth, db, cache, ai]
  • GET /api/tasks/:id/commands params(id) [auth, db, cache, ai]
  • GET /api/sessions/:sessionId/worktree-risk params(sessionId) [auth, db]
  • POST /api/sessions/:sessionId/worktree-stash params(sessionId) [auth, db]
  • GET /api/ws/sessions/:sessionId params(sessionId) [auth, db]
  • GET /api/ws/user params() [auth, db]
  • GET /api/projects/:id/agents params(id) [db, cache]
  • GET /api/analytics/context params() [auth, db]
  • POST /api/chats/:id/messages/:msg_id/artifacts/download params(id, msg_id) [auth, db]
  • GET /api/chats/:id/messages/:msg_id/html_artifact params(id, msg_id) [auth, db]
  • GET /api/projects/:project_id/artifacts/:filename params(project_id, filename) [auth, db]
  • GET /api/sessions/:id/chats params(id) [auth, db, queue]
  • POST /api/sessions/:id/chats params(id) [auth, db, queue]
  • PATCH /api/chats/:id params(id) [auth, db, queue]
  • POST /api/sessions/:id/chats/archive-all params(id) [auth, db, queue]
  • GET /api/sessions/:id/chats/open-count params(id) [auth, db, queue]
  • POST /api/chats/:id/archive params(id) [auth, db, queue]
  • POST /api/chats/:id/unarchive params(id) [auth, db, queue]
  • DELETE /api/chats/:id params(id) [auth, db, queue]
  • POST /api/chats/:id/fork params(id) [auth, db, queue]
  • POST /api/chats/:id/discard_stale params(id) [auth, db, queue]
  • GET /api/chats/:id/export params(id) [auth, db, queue]
  • POST /api/chats/:id/compare params(id) [auth, db, queue]
  • GET /api/coder/ws/sessions/:sessionId params(sessionId) [auth]
  • ALL /api/coder/* params() [auth]
  • GET /api/settings/inference params() [cache]
  • PATCH /api/settings/inference params() [cache]
  • GET /api/sessions/:id/messages params(id) [auth, db, queue]
  • POST /api/chats/:id/messages/:message_id/regenerate params(id, message_id) [auth, db, queue]
  • POST /api/chats/:id/compact params(id) [auth, db, queue]
  • POST /api/chats/:id/stop params(id) [auth, db, queue]
  • POST /api/chats/:id/continue params(id) [auth, db, queue]
  • POST /api/chats/:id/force_send params(id) [auth, db, queue]
  • POST /api/chats/:id/grant_read_access params(id) [auth, db, queue]
  • POST /api/chats/:id/mcp-approve params(id) [auth, db, queue]
  • POST /api/chats/:id/messages/:message_id/feedback params(id, message_id) [auth, db, queue]
  • GET /api/models params() [auth]
  • POST /api/projects/create params() [auth, db]
  • POST /api/projects/:id/archive params(id) [auth, db]
  • POST /api/projects/:id/unarchive params(id) [auth, db]
  • GET /api/projects/available params() [auth, db]
  • GET /api/projects/:id/list_dir params(id) [auth, db]
  • GET /api/projects/:id/view_file params(id) [auth, db]
  • GET /api/projects/:id/git params(id) [auth, db]
  • GET /api/projects/:id/git/diff params(id) [auth, db]
  • POST /api/projects/:id/git/stage params(id) [auth, db]
  • POST /api/projects/:id/git/unstage params(id) [auth, db]
  • POST /api/projects/:id/git/commit params(id) [auth, db]
  • POST /api/projects/:id/git/discard params(id) [auth, db]
  • POST /api/projects/:id/write_file params(id) [auth, db]
  • GET /api/projects/:id/files params(id) [auth, db]
  • GET /api/projects/:id/sessions params(id) [auth, db]
  • POST /api/projects/:id/sessions params(id) [auth, db]
  • PATCH /api/sessions/:id/workspace params(id) [auth, db]
  • POST /api/projects/:id/sessions/archive-all params(id) [auth, db]
  • GET /api/projects/:id/sessions/open-count params(id) [auth, db]
  • POST /api/sessions/:id/archive params(id) [auth, db]
  • POST /api/sessions/:id/unarchive params(id) [auth, db]
  • GET /api/settings params() [db]
  • PATCH /api/settings params() [db]
  • GET /api/sidebar params() [auth, db]
  • GET /api/skills params() [auth, db, queue]
  • POST /api/chats/:id/skill_invoke params(id) [auth, db, queue]
  • GET /api/tools/cost_stats params() [auth, db]
  • GET /api/chats/:id/traces params(id) [db]
  • GET /api/ws/sessions/:id params(id) [auth, db]

go-net-http

  • GET /health params() [queue]
  • POST /v1/get_codebase_overview params() [queue]
  • POST /v1/get_file_analysis params() [queue]
  • POST /v1/get_symbol_info params() [queue]
  • POST /v1/search_symbols params() [queue]
  • POST /v1/get_dependencies params() [queue]
  • POST /v1/watch_changes params() [queue]
  • POST /v1/get_semantic_neighborhoods params() [queue]
  • POST /v1/get_framework_analysis params() [queue]
  • POST /v1/get_symbol_details params() [queue]
  • POST /v1/get_call_graph params() [queue]
  • POST /v1/get_blast_radius params() [queue]

WebSocket Events

  • WS messageapps/booterm/src/ws/attach.ts
  • WS closeapps/booterm/src/ws/attach.ts
  • WS messageapps/coder/src/cli.ts
  • WS errorapps/coder/src/cli.ts
  • WS closeapps/coder/src/cli.ts
  • WS closeapps/coder/src/routes/ws.ts
  • WS errorapps/coder/src/routes/ws.ts
  • WS closeapps/server/src/routes/ws.ts
  • WS errorapps/server/src/routes/ws.ts

Schema

pending_changes

  • id: uuid (pk)
  • session_id: uuid (required, fk)
  • task_id: uuid (fk)
  • file_path: text (required)
  • operation: text (required)
  • diff: text (required)
  • status: text (required)

tasks

  • id: uuid (pk)
  • project_id: uuid (required, fk)
  • parent_task_id: uuid (fk)
  • state: text (required)
  • input: text (required)
  • output_summary: text
  • agent: text
  • model: text
  • execution_path: text
  • cost_tokens: integer
  • started_at: timestamp(tz)
  • ended_at: timestamp(tz)

available_agents

  • name: text (pk)
  • install_path: text
  • version: text
  • supports_acp: boolean (required)
  • last_probed_at: timestamp(tz)

agent_sessions

  • session_id: uuid (required, fk)
  • agent: text (required)
  • backend: text (required)
  • agent_session_id: text (fk)
  • server_port: integer
  • status: text (required)
  • last_active_at: timestamp(tz)

worktrees

  • id: uuid (pk)
  • session_id: uuid (fk)
  • project_id: uuid (fk)
  • path: text (required)
  • branch: text
  • base_commit: text
  • slug: text
  • status: text (required)

checkpoints

  • id: uuid (pk)
  • chat_id: uuid (required, fk)
  • session_id: uuid (fk)
  • worktree_id: uuid (fk)
  • message_id: uuid (fk)

claude_session_entries

  • id: bigint(auto) (pk)
  • project_key: text (required)
  • session_id: text (required, fk)
  • subpath: text (required)

flow_runs

  • id: uuid (pk)
  • project_id: uuid (required, fk)
  • flow_name: text (required)
  • band: text (required)
  • model: text (required)
  • status: text (required)
  • input: jsonb (required)
  • report: text
  • error: text

flow_steps

  • id: uuid (pk)
  • run_id: uuid (required, fk)
  • step_id: text (required, fk)
  • kind: text (required)
  • agent: text
  • status: text (required)
  • task_id: uuid (fk)
  • chat_id: uuid (fk)
  • input: text
  • output: text
  • error: text

battles

  • id: uuid (pk)
  • project_id: uuid (required, fk)
  • battle_type: text (required)
  • prompt: text (required)
  • status: text (required)
  • winner_contestant_id: uuid (fk)
  • results_path: text
  • error: text

contestants

  • id: uuid (pk)
  • battle_id: uuid (required, fk)
  • identity: text (required)
  • model: text (required)
  • lane: text (required)
  • task_id: uuid (fk)
  • worktree_id: uuid (fk)
  • status: text (required)
  • duration_ms: integer
  • tokens_per_sec: float8
  • cost_tokens: integer
  • result_path: text
  • error: text

cross_examinations

  • id: uuid (pk)
  • battle_id: uuid (required, fk)
  • identity: text (required)
  • model: text (required)
  • verdict: text

flow_step_events

  • id: uuid (pk)
  • run_id: uuid (required, fk)
  • step_id: varchar (required, fk)
  • event: varchar (required)
  • payload: jsonb

plans

  • id: uuid (pk)
  • project_id: uuid (required, fk)
  • title: text (required)
  • description: text
  • status: text (required)
  • flow_run_id: uuid (fk)
  • progress_pct: integer (required)
  • items_total: integer (required)
  • items_completed: integer (required)
  • metadata: jsonb

projects

  • id: uuid (pk)
  • name: text (required)
  • path: text (required)
  • added_at: timestamp(tz) (required)
  • last_session_id: uuid (fk)

sessions

  • id: uuid (pk)
  • project_id: uuid (required, fk)
  • name: text (required)
  • model: text (required)
  • system_prompt: text (required)

messages

  • id: uuid (pk)
  • session_id: uuid (required, fk)
  • role: text (required)
  • content: text (required)
  • status: text (required)
  • last_seq: integer (required)
  • cache_tokens: integer
  • reasoning_tokens: integer

message_parts

  • id: uuid (pk)
  • message_id: uuid (required, fk)
  • sequence: integer (required)
  • kind: text (required)
  • payload: jsonb (required)

settings

  • value: jsonb (required)

chats

  • id: uuid (pk)
  • session_id: uuid (required, fk)
  • name: text
  • status: text (required)

tool_traces

  • id: uuid (pk)
  • session_id: uuid (required, fk)
  • chat_id: uuid (required, fk)
  • message_id: uuid (fk)
  • turn_number: integer (required)
  • tool_name: text (required)
  • tool_input: jsonb (required)
  • tool_output: text
  • started_at: timestamp(tz) (required)
  • finished_at: timestamp(tz)
  • latency_ms: integer
  • tokens_used: integer
  • cache_tokens: integer
  • reasoning_tokens: integer
  • error: text
  • outcome: text

tool_trace_states

  • id: uuid (pk)
  • session_id: uuid (required, fk)
  • chat_id: uuid (required, fk)
  • message_id: uuid (fk)
  • turn_number: integer (required)
  • tool_name: text (required)
  • tool_input: jsonb (required)
  • started_at: timestamp(tz) (required)

agent_snapshots

  • id: uuid (pk)
  • session_id: uuid (required, fk)
  • chat_id: uuid (required, fk)
  • model: text (required)
  • agent: text
  • mode: text
  • turn_number: integer (required)
  • messages: jsonb (required)
  • tool_states: jsonb (required)

Components

  • Appapps/web/src/App.tsx
  • AddProjectModal — props: open, onOpenChange, onAdded — apps/web/src/components/AddProjectModal.tsx
  • AgentComposerBar — props: projectPath, value, onChange, onProviderCommandsChange, connected, agentStatus — apps/web/src/components/AgentComposerBar.tsx
  • AgentPicker — props: projectId, value, onChange — apps/web/src/components/AgentPicker.tsx
  • ArenaLauncherDialogapps/web/src/components/ArenaLauncherDialog.tsx
  • ArtifactPaneHeader — props: title, defaultTitle, onDownload, downloadDisabled, onClose, onCopy, justCopied, copyDisabled — apps/web/src/components/ArtifactPaneHeader.tsx
  • AskUserInputCard — props: toolCall, toolResult, chatId, apiPrefix — apps/web/src/components/AskUserInputCard.tsx
  • AttachmentChip — props: attachment, onRemove, onPreview — apps/web/src/components/AttachmentChip.tsx
  • AttachmentPreviewModal — props: attachment, onClose — apps/web/src/components/AttachmentPreviewModal.tsx
  • BottomSheet — props: open, onClose, title — apps/web/src/components/BottomSheet.tsx
  • CacheShapeBadge — props: cacheTokens, totalTokens — apps/web/src/components/CacheShapeBadge.tsx
  • CapHitSentinel — props: message, capHitPosition, isLatest — apps/web/src/components/CapHitSentinel.tsx
  • ChatInput — props: disabled, projectId, agentId, onAgentChange, sessionId, webSearchEnabled, onSend, onForceSend, generating, onStop — apps/web/src/components/ChatInput.tsx
  • ChatTabBar — props: pane, tabs, tabNumbers, onSwitchTab, onRemoveTab, onCloseOthers, onCloseToRight, onCloseAll, onNewTab, onSplitPane — apps/web/src/components/ChatTabBar.tsx
  • ChatThroughput — props: chatId, className — apps/web/src/components/ChatThroughput.tsx
  • CodeBlock — props: code, lang — apps/web/src/components/CodeBlock.tsx
  • ComparePane — props: models, responses, onClose — apps/web/src/components/ComparePane.tsx
  • ContextMeter — props: messages, modelContextLimit, sessionCostUsd — apps/web/src/components/ContextMeter.tsx
  • CreateProjectModal — props: open, onOpenChange — apps/web/src/components/CreateProjectModal.tsx
  • DiffSnippet — props: diff — apps/web/src/components/DiffSnippet.tsx
  • DiffSplitView — props: file, wrapLines — apps/web/src/components/DiffSplitView.tsx
  • DoomLoopSentinel — props: message — apps/web/src/components/DoomLoopSentinel.tsx
  • DropOverlay — props: visible — apps/web/src/components/DropOverlay.tsx
  • EmptyState — props: icon, title, description, action, className — apps/web/src/components/EmptyState.tsx
  • FileMentionPopover — props: query, files, anchorRect, onSelect, onClose — apps/web/src/components/FileMentionPopover.tsx
  • FileViewerOverlay — props: path, content, lang, onClose — apps/web/src/components/FileViewerOverlay.tsx
  • FlowLauncherDialogapps/web/src/components/FlowLauncherDialog.tsx
  • GitDiffView — props: result, loading, error, mode, onSelectMode, onRefresh, mutating, mutateError, onStage, onUnstage — apps/web/src/components/GitDiffView.tsx
  • HtmlArtifactPane — props: chatId, state, onClose — apps/web/src/components/HtmlArtifactPane.tsx
  • InferenceSettingsapps/web/src/components/InferenceSettings.tsx
  • InlineReviewEditor — props: initialBody, onSave, onCancel — apps/web/src/components/InlineReviewEditor.tsx
  • InlineReviewGutterCell — props: lineNumber, type, hasComments, canComment, onClick — apps/web/src/components/InlineReviewGutterCell.tsx
  • InlineReviewThread — props: comments, onEditComment, onDeleteComment — apps/web/src/components/InlineReviewThread.tsx
  • KeyboardShortcutsDialog — props: open, onOpenChange — apps/web/src/components/KeyboardShortcutsDialog.tsx
  • MarkdownArtifactPane — props: chatId, state, onClose — apps/web/src/components/MarkdownArtifactPane.tsx
  • MarkdownRenderer — props: content — apps/web/src/components/MarkdownRenderer.tsx
  • McpPermissionDialog — props: toolCallId, toolName, toolArgs, chatId, open, onClose — apps/web/src/components/McpPermissionDialog.tsx
  • McpResponseDisplay — props: toolCall, toolResult — apps/web/src/components/McpResponseDisplay.tsx
  • MessageBubble — props: message, sessionChats, capHitInfo, actions, hideActions, hasCheckpoint, restoreDisabled — apps/web/src/components/MessageBubble.tsx
  • MessageList — props: messages, sessionChats — apps/web/src/components/MessageList.tsx
  • MobileTabSwitcher — props: panes, activePaneIdx, chats, onSwitchPane, onRemovePane, onRenameChat — apps/web/src/components/MobileTabSwitcher.tsx
  • ModelPicker — props: value, onChange — apps/web/src/components/ModelPicker.tsx
  • NewPaneMenu — props: onAddPane, disabled, projectId — apps/web/src/components/NewPaneMenu.tsx
  • PaneHeaderActions — props: onNewTab, onSplitPane, onNewOrchestrator, onNewArena, onReopenPane, onShowHistory, onRemovePane, historyActive, className — apps/web/src/components/PaneHeaderActions.tsx
  • PermissionCard — props: prompt, onRespond, busy — apps/web/src/components/PermissionCard.tsx
  • ProjectSidebarapps/web/src/components/ProjectSidebar.tsx
  • RequestReadAccessCard — props: toolCall, toolResult, chatId — apps/web/src/components/RequestReadAccessCard.tsx
  • RightRail — props: projectId, sessionId — apps/web/src/components/RightRail.tsx
  • SessionLandingPage — props: projectId, sessionId, agentId, onAgentChange, onSend, onSkillInvoke, createChat, chats, onOpenChat, onUnarchiveChat — apps/web/src/components/SessionLandingPage.tsx
  • SessionTimeline — props: messages, onClose, onScrollToMessage — apps/web/src/components/SessionTimeline.tsx
  • SlashCommandPicker — props: query, items, groups, inputRef, onSelect, onClose, emptyLabel — apps/web/src/components/SlashCommandPicker.tsx
  • StaleStreamBanner — props: onRetry, onDiscard — apps/web/src/components/StaleStreamBanner.tsx
  • StatusDot — props: chatId, className — apps/web/src/components/StatusDot.tsx
  • ThemePickerapps/web/src/components/ThemePicker.tsx
  • ToolCallGroup — props: runs — apps/web/src/components/ToolCallGroup.tsx
  • ToolCallLine — props: run, insideGroup, chatId — apps/web/src/components/ToolCallLine.tsx
  • TraceViewer — props: chatId — apps/web/src/components/TraceViewer.tsx
  • Workspace — props: sessionId, projectId, agentId, onAgentChange, panesHook, chatsHook, session, project, onAddPane — apps/web/src/components/Workspace.tsx
  • AddProviderModal — props: open, onOpenChange, onAdded — apps/web/src/components/coder/AddProviderModal.tsx
  • ProvidersSettingsapps/web/src/components/coder/ProvidersSettings.tsx
  • MatrixRain — props: enabled, density, speed, opacity — apps/web/src/components/fx/MatrixRain.tsx
  • NeonField — props: enabled, opacity, speed — apps/web/src/components/fx/NeonField.tsx
  • ThemeFxapps/web/src/components/fx/ThemeFx.tsx
  • ClaudeIcon — props: size, className — apps/web/src/components/icons/ProviderIcons.tsx
  • OpenCodeIcon — props: size, className — apps/web/src/components/icons/ProviderIcons.tsx
  • ActionRow — props: message, actions, hiddenSet, hasCheckpoint, restoreDisabled — apps/web/src/components/message-parts/ActionRow.tsx
  • CompactCard — props: message, sessionChats — apps/web/src/components/message-parts/CompactCard.tsx
  • MistakeRecoverySentinel — props: message — apps/web/src/components/message-parts/MistakeRecoverySentinel.tsx
  • ReasoningBlock — props: text, streaming — apps/web/src/components/message-parts/ReasoningBlock.tsx
  • SendToTerminalMenuapps/web/src/components/message-parts/SendToTerminalMenu.tsx
  • StatsLine — props: message — apps/web/src/components/message-parts/StatsLine.tsx
  • SummaryCard — props: message — apps/web/src/components/message-parts/SummaryCard.tsx
  • ArenaPane — props: state, onClose — apps/web/src/components/panes/ArenaPane.tsx
  • ChatPane — props: sessionId, chatId, projectId, agentId, onAgentChange, sessionChats, webSearchEnabled — apps/web/src/components/panes/ChatPane.tsx
  • CoderMessageList — props: messages, chatId, footer, actions, checkpointMessageIds, restoreDisabled — apps/web/src/components/panes/CoderMessageList.tsx
  • CoderPane — props: sessionId, paneId, chatId, chatPending, projectPath, onConnectedChange, onAgentLabelChange — apps/web/src/components/panes/CoderPane.tsx
  • OrchestratorPane — props: state, onClose — apps/web/src/components/panes/OrchestratorPane.tsx
  • SettingsPane — props: session, project, maximized, onToggleMaximize, onClose, isMobile — apps/web/src/components/panes/SettingsPane.tsx
  • TerminalPane — props: sessionId, paneId, label, description, parentAgent, active — apps/web/src/components/panes/TerminalPane.tsx
  • FloatingMenu — props: x, y, hasSelection, chatInputs, onCopy, onPaste, onSelectAll, onSearch, onSendToChat, onDismiss — apps/web/src/components/panes/terminal/FloatingMenu.tsx
  • SearchBar — props: searchRef, theme, onClose — apps/web/src/components/panes/terminal/SearchBar.tsx
  • TerminalHotkeyBar — props: ctrlArmed, onSendBytes, onArmCtrl, onFit — apps/web/src/components/panes/terminal/TerminalHotkeyBar.tsx
  • RightRailDrawerProviderapps/web/src/hooks/useRightRailDrawer.tsx
  • SidebarDrawerProviderapps/web/src/hooks/useSidebarDrawer.tsx
  • PATH_REGEXapps/web/src/lib/linkify-paths.tsx
  • Analyticsapps/web/src/pages/Analytics.tsx
  • Homeapps/web/src/pages/Home.tsx
  • Memoryapps/web/src/pages/Memory.tsx
  • Projectapps/web/src/pages/Project.tsx
  • Resultsapps/web/src/pages/Results.tsx
  • Sessionapps/web/src/pages/Session.tsx
  • Settingsapps/web/src/pages/Settings.tsx

Libraries

  • apps/booterm/src/auth.ts — function getUser: (req) => string
  • apps/booterm/src/config.ts — function loadConfig: () => Config
  • apps/booterm/src/db.ts
    • function getPool: (databaseUrl) => pg.Pool
    • function getSessionInfo: (sessionId) => Promise<SessionInfo | null>
    • function pingDb: () => Promise
    • function closeDb: () => Promise
  • apps/booterm/src/pty/manager.ts
    • function sanitizeId: (raw) => string | null
    • function tmuxSessionName: (paneId) => string
    • function hasSession: (tmuxConfPath, sessionName) => Promise
    • function ensureSession: (tmuxConfPath, sessionName, projectRoot, log, cols?, rows?) => Promise
    • function killSession: (tmuxConfPath, sessionName) => Promise
    • function capturePane: (tmuxConfPath, sessionName, lines) => Promise
    • ...1 more
  • apps/booterm/src/pty/pty.ts — function attachPty: (opts) => IPty
  • apps/booterm/src/pty/registry.ts
    • function register: (sessionId, paneId, projectPath, title?, opts?) => void
    • function unregister: (paneId) => void
    • function touchActivity: (paneId) => void
    • function list: () => SessionMeta[]
    • function get: (paneId) => SessionMeta | undefined
    • function setPendingMetadata: (paneId, meta) => void
    • ...8 more
  • apps/booterm/src/ws/attach.ts — function registerWsAttachRoute: (app, tmuxConfPath, idleTimeoutSeconds?, absoluteTimeoutSeconds?) => void
  • apps/coder/src/conductor/contracts.ts
    • function produceContract: (contracts) => string
    • function reviewContract: (contracts) => string
    • type Contract
    • const EVIDENCE_PRODUCE
    • const EVIDENCE_REVIEW
    • const YAGNI_PRODUCE
    • ...1 more
  • apps/coder/src/conductor/flows/_util.ts — function q, function repoLine
  • apps/coder/src/conductor/flows/index.ts
    • function describeFlows: () => string
    • function getFlow: (name) => Flow | undefined
    • const FLOWS: Record<string, Flow>
    • const FLOW_NAMES: string[]
  • apps/coder/src/conductor/persona-loader.ts — function loadPersona: (agent) => Promise, const AGENTS_DIR
  • apps/coder/src/conductor/render.ts — function slugify: (s) => string
  • apps/coder/src/conductor/spine.ts
    • function readBand: (input) => Band
    • function fastNote: (ctx) => string
    • function buildSpineFlow: (spine) => Flow
  • apps/coder/src/config.ts — function loadConfig: () => Config, type Config
  • apps/coder/src/db.ts
    • function getSql: (config) => Sql
    • function applySchema: (sql) => Promise
    • function pingDb: (sql) => Promise
    • function closeDb: () => Promise
    • type Sql
  • apps/coder/src/plugins/host.ts
    • function registerHook: (name, fn) => void
    • function emitHook: (name, ctx) => Promise
    • function clearHooks: () => void
    • interface ToolHookContext
    • interface ToolResultContext
    • type HookName
    • ...1 more
  • apps/coder/src/services/acp-client-fs.ts — function readWorktreeTextFile: (worktreePath, filePath, line?, limit?) => Promise, function writeWorktreeTextFile: (worktreePath, filePath, content) => Promise
  • apps/coder/src/services/acp-client.ts — function buildAcpClient: (worktreePath, resolveTurn) => void, interface AcpTurnContext
  • apps/coder/src/services/acp-derive.ts
    • function deriveModesFromACP: (fallbackModes, modeState?, configOptions?) => void
    • function deriveModelDefinitionsFromACP: (models, configOptions?) => ProviderModel[]
    • function findThoughtLevelConfigId: (configOptions) => string | null
  • apps/coder/src/services/acp-dispatch.ts
    • function dispatchViaAcp: (opts) => Promise
    • interface AcpDispatchResult
    • interface AcpDispatchOpts
  • apps/coder/src/services/acp-event-map.ts — function mapSessionUpdate: (params, priorSnapshots, AcpToolSnapshot>) => void
  • apps/coder/src/services/acp-probe.ts — function probeAcpProvider: (agent, installPath, cwd) => Promise, interface AcpProbeResult
  • apps/coder/src/services/acp-spawn.ts
    • function resolveAcpSpawnArgs: (agent) => string[] | null
    • function resolveLaunchSpec: (resolved, installPath) => void
    • function resolveAcpProbeBinaries: (agent) => string[]
  • apps/coder/src/services/acp-stream.ts — function createAcpNdJsonStream: (child) => void
  • apps/coder/src/services/acp-tool-snapshot.ts
    • function mergeToolSnapshot: (toolCallId, update, previous?) => AcpToolSnapshot
    • function mapToolLifecycleStatus: (status, rawOutput?) => AcpToolLifecycleStatus
    • function snapshotToWireToolCall: (snapshot) => void
    • function snapshotToPartPayload: (snapshot) => void
    • function synthesizeCanceledSnapshots: (snapshots) => AcpToolSnapshot[]
    • interface AcpToolSnapshot
    • ...2 more
  • apps/coder/src/services/agent-commands-cache.ts
    • function setTaskCommands: (taskId, commands) => void
    • function mergeTaskCommands: (taskId, commands) => void
    • function getTaskCommands: (taskId) => AgentCommand[] | null
    • function clearTaskCommands: (taskId) => void
  • apps/coder/src/services/agent-pool.ts
    • class AgentPool
    • interface AgentPoolOpts
    • const OPENCODE_POOL_KEY
    • const agentPool
  • apps/coder/src/services/agent-probe.ts — function probeAgents: (sql, log) => Promise
  • apps/coder/src/services/agent-status-publish.ts — function publishAgentStatus: (publishFrame, sessionId, chatId, agent, status, reason?, at) => void
  • apps/coder/src/services/agent-turn-persist.ts — function persistExternalAgentTurn: (sql, assistantMessageId, snapshots, reasoningText) => Promise
  • apps/coder/src/services/arena-analyzer-helpers.ts
    • function buildDigestPrompt: (input) => void
    • function buildJudgePrompt: (originalPrompt, digests) => void
    • function shouldNameWinner: (succeededCount) => boolean
    • function extractWinner: (judgeOutput) => void
    • function buildCrossExamPrompt: (opts) => void
    • interface ContestantDigestInput
    • ...1 more
  • apps/coder/src/services/arena-analyzer.ts — function createAnalyzer: (deps) => Analyzer, interface Analyzer
  • apps/coder/src/services/arena-decisions.ts
    • function classifyLane: (battleType, _identity, model, localModels) => ContestantLane
    • function nextLocalContestant: (contestants) => string | null
    • function isBattleComplete: (contestants) => boolean
    • function computeBenchmark: (startedAt, endedAt, costTokens, lane, tokenBreakdown) => Benchmark
    • function sanitizeSlug: (s) => string
    • function buildBattleSlug: (battleId, battleType, createdAt) => string
    • ...7 more
  • apps/coder/src/services/arena-model-call.ts — function arenaModelCall: (opts, 'LLAMA_SWAP_URL'>; model) => Promise
  • apps/coder/src/services/arena-runner.ts
    • function createBattleRunner: (deps) => BattleRunner
    • interface ContestantSpec
    • interface BattleStartOpts
    • interface BattleRunner
    • type DispatchContestantFn
    • type OnBattleComplete
    • ...1 more
  • apps/coder/src/services/audit-session.ts
    • function generateSessionId: () => string
    • function getCurrentSession: (basePath?) => Promise<string | null>
    • function getSessionJson: (sessionId, basePath?) => Promise<SessionJson | null>
    • function getIndex: (basePath?) => Promise<IndexJson | null>
    • function startSession: (task, basePath?) => Promise
    • function endSession: (basePath?) => Promise<EndSessionResult | null>
    • ...18 more
  • apps/coder/src/services/backends/claude-sdk-map.ts
    • function createClaudeSdkMapState: () => ClaudeSdkMapState
    • function mapSdkMessage: (msg, state) => AgentEvent[]
    • interface ClaudeSdkMapState
  • apps/coder/src/services/backends/claude-sdk-routing.ts — function claudeSdkBackendEnabled: (env) => boolean, function shouldUseClaudeSdk: (task, env) => boolean
  • apps/coder/src/services/backends/claude-sdk.ts — class ClaudeSdkBackend, interface ClaudeSdkBackendDeps
  • apps/coder/src/services/backends/claude-session-store.ts — class PostgresSessionStore
  • apps/coder/src/services/backends/lifecycle-decisions.ts
    • function selectIdleEvictionTargets: (entries, now, ttlMs) => string[]
    • function selectLruEvictionTargets: (entries, cap) => string[]
    • function decideRestart: (input) => RestartDecision
    • function selectOrphanWorktreeTargets: (onDisk, liveWorktreePaths, now, graceMs) => string[]
    • interface PoolEntrySnapshot
    • interface RestartDecisionInput
    • ...7 more
  • apps/coder/src/services/backends/opencode-event-map.ts
    • function stripDcpTags: (s) => string
    • function eventSessionId: (ev) => string | null
    • function resolvePartDedupeKey: (part, type) => string | null
    • function mapToolStatus: (s) => ToolCallStatus | null
    • function toolPartToSnapshot: (part) => AcpToolSnapshot
    • function toolCalledSnapshot: (p) => AcpToolSnapshot
    • ...7 more
  • apps/coder/src/services/backends/opencode-server-process.ts
    • function shouldStartServer: (s) => boolean
    • class OpenCodeServerSupervisor
    • interface ServerDownInfo
    • interface SupervisorHooks
    • interface OpenCodeServerSupervisorDeps
  • apps/coder/src/services/backends/opencode-server.ts — class OpenCodeServerBackend, interface OpenCodeServerBackendDeps
  • apps/coder/src/services/backends/opencode-sse.ts
    • function reconnectDecision: (failures, policy) => ReconnectDecision
    • function startSessionEventLoop: (state, deps) => void
    • function runSessionEventLoop: (state, abort, deps) => Promise
    • interface TurnState
    • interface SessionState
    • interface ReconnectPolicy
    • ...4 more
  • apps/coder/src/services/backends/opencode-usage.ts
    • function stepEndedToUsage: (props) => StepUsage
    • interface StepEndedProps
    • interface StepUsage
  • apps/coder/src/services/backends/paseo.ts — class PaseoBackend, interface PaseoBackendDeps
  • apps/coder/src/services/backends/pushable-iterable.ts — function createPushable: () => Pushable, interface Pushable
  • apps/coder/src/services/backends/turn-guard.ts
    • function armAbortGuard: (g) => void
    • function noteTurnActivity: (g) => void
    • function consumeTerminal: (g) => 'swallow' | 'settle'
    • interface AbortTerminalGuard
  • apps/coder/src/services/backends/warm-acp-routing.ts — function shouldUseWarmBackend: (task) => boolean, function isTurnOkForStopReason: (stopReason) => boolean
  • apps/coder/src/services/backends/warm-acp.ts — class WarmAcpBackend, interface WarmAcpBackendDeps
  • apps/coder/src/services/behavioral/generation.ts
    • function createExecutionPlan: (observational, actionable, previouslyApplied, disambiguationGroups, lowCriticality) => BatchExecutionPlan[]
    • function getRetryTemperatures: (baseTemp, maxAttempts) => number[]
    • class SchematicGenerator
    • class DefaultSchematicGenerator
    • interface ObservationalOutput
    • interface ActionableOutput
    • ...7 more
  • apps/coder/src/services/behavioral/matching.ts
    • function matchWithRetry: (fn) => void
    • function executeBatchesParallel: (batches, _generationInfo) => Promise
    • function createScoredMatch: (guidelineId, score, rationale) => ScoredMatch
    • class GuidelineMatchingBatchError
    • class ObservationalGuidelineMatchingBatch
    • class ActionableGuidelineMatchingBatch
    • ...25 more
  • apps/coder/src/services/behavioral/resolver.ts
    • class RelationalResolver
    • interface RelationshipEntity
    • interface Relationship
    • interface RelationshipStore
    • interface ResolvedEntity
    • interface Resolution
    • ...8 more
  • apps/coder/src/services/cancel-registry.ts — function createCancelRegistry: () => CancelRegistry, interface CancelRegistry
  • apps/coder/src/services/checkpoints.ts
    • function buildShadowCommitCommand: (worktreePath, id) => string
    • function createCheckpoint: (sql, args, opts?) => Promise<
    • function restoreCheckpoint: (sql, checkpointId, opts?) => Promise
    • class CheckpointNotFoundError
    • interface CreateCheckpointArgs
    • interface RestoreCheckpointResult
    • ...1 more
  • apps/coder/src/services/claude-command-discovery.ts — function discoverClaudeCommands: () => AgentCommand[]
  • apps/coder/src/services/collision-detector.ts
    • function findConflicts: (changedFiles, worktreeId, /** Approximate line range for the proposed changes, keyed by file path */ changedRanges, {...}, conflictIndex) => ConflictVerdict[]
    • interface ConflictVerdict
    • interface ConflictEntry
    • type ConflictSeverity
    • type ConflictIndexData
  • apps/coder/src/services/command-availability.ts — function isCommandAvailable: (binary) => Promise
  • apps/coder/src/services/conflict-index.ts — class ConflictIndex, const conflictIndex
  • apps/coder/src/services/correction-service.ts
    • function recordCorrection: (originalClaim, correction, principleExtracted, persistedTo, basePath?) => Promise
    • function scanForCorrections: (auditPath) => Promise<UserCorrectionRecord[]>
    • function checkContradiction: (action, corrections) => void
    • function markPersisted: (correctionId, filePath, basePath?) => Promise<UserCorrectionRecord | null>
    • function listCorrections: (basePath?) => Promise<UserCorrectionRecord[]>
    • function appendCorrectionToTrail: (trailPath, correction) => Promise
    • ...2 more
  • apps/coder/src/services/dcp-strip.ts
    • function stripDcpTags: (s) => string
    • function makeDcpStreamStripper: () => DcpStreamStripper
    • interface DcpStreamStripper
  • apps/coder/src/services/dispatcher.ts — function createDispatcher: (deps) => void
  • apps/coder/src/services/edit-guards-imports.ts — function checkDroppedImports: (original, updated, filePath) => ImportCheckResult, interface ImportCheckResult
  • apps/coder/src/services/edit-guards.ts
    • function validateEditResult: (original, updated, filePath) => GuardResult
    • function formatGuardError: (guard, filePath) => string
    • interface GuardResult
  • apps/coder/src/services/finalize-message.ts
    • function classifyTerminalStatus: (opts) => TerminalMessageStatus
    • function finalizeStreamingMessage: (sql, publishFrame, frame) => void
    • type TerminalMessageStatus
  • apps/coder/src/services/flow-artifacts.ts — function getArtifactPath: (flowRunId, stepId) => string, function writeFlowArtifact: (flowRunId, stepId, content) => Promise
  • apps/coder/src/services/flow-runner-decisions.ts
    • function manifestSteps: (flow, launchCtx) => Step[]
    • function readySteps: (flow, state) => Step[]
    • function partitionReady: (ready, ctx) => void
    • function isRunComplete: (flow, state) => boolean
    • function isStuck: (flow, state) => boolean
    • function buildBatchState: (flow, inFlight) => Map<string,
    • ...12 more
  • apps/coder/src/services/flow-runner.ts
    • function createFlowRunner: (deps) => FlowRunner
    • function resolveVariables: (prompt, results, string>) => string
    • interface LaunchOpts
    • interface FlowRunner
  • apps/coder/src/services/frame-emitter.ts
    • function makeFrameEmitter: (opts) => FrameEmitter
    • interface FrameEmitterOpts
    • interface FrameEmitter
  • apps/coder/src/services/fuzzy-match.ts
    • function locateMatch: (content, needle) => MatchResult
    • type MatchResult
    • const SIMILARITY_THRESHOLD
    • const AMBIGUITY_EPSILON
  • apps/coder/src/services/guideline-service.ts
    • function createGuideline: (params, basePath?) => Promise
    • function listGuidelines: (filter?, basePath?) => Promise<Guideline[]>
    • function readGuideline: (id, basePath?) => Promise<Guideline | null>
    • function updateGuideline: (id, params, basePath?) => Promise<Guideline | null>
    • function deleteGuideline: (id, basePath?) => Promise
    • function findGuideline: (content, basePath?) => Promise<Guideline | null>
    • ...14 more
  • apps/coder/src/services/hashline/hash-computation.ts
    • function computeLineHash: (lineNumber, content) => string
    • function computeLegacyLineHash: (lineNumber, content) => string
    • function formatHashLine: (lineNumber, content) => string
    • function formatHashLines: (content) => string
  • apps/coder/src/services/hashline/validation.ts
    • function normalizeLineRef: (ref) => string
    • function parseLineRef: (ref) => LineRef
    • function validateLineRef: (lines, ref) => void
    • function validateLineRefs: (lines, refs) => void
    • class HashlineMismatchError
    • interface LineRef
  • apps/coder/src/services/hashline/xxhash32.ts — function hashXxh32: (input, seed) => number
  • apps/coder/src/services/host-exec.ts — function hostExec: (command, opts?) => Promise, interface HostExecResult
  • apps/coder/src/services/lsp/client.ts — class LspClient
  • apps/coder/src/services/lsp/config.ts — function getServerConfig: (filePath) => LspServerConfig | null, interface LspServerConfig
  • apps/coder/src/services/lsp/operations.ts
    • function openDocument: (client, filePath, content, version) => Promise
    • function closeDocument: (client, filePath) => Promise
    • function getDiagnostics: (client, filePath, content) => Promise<Diagnostic[]>
    • function gotoDefinition: (client, filePath, content, line, character) => Promise<Location | null>
    • function findReferences: (client, filePath, content, line, character) => Promise<Location[]>
  • apps/coder/src/services/lsp/server-manager.ts — class LspServerManager, const lspManager
  • apps/coder/src/services/mcp-server.ts — function startMcpServer: (sql) => Promise
  • apps/coder/src/services/model-resolution/connected-providers-cache.ts
    • function readConnectedProvidersCache: () => string[] | null
    • function findProviderModelMetadata: (_providerID, _modelID) => ModelMetadata | undefined
    • function readProviderModelsCache: () => ProviderModelsCache | null
    • interface ProviderModelsCache
    • interface ConnectedProvidersAdapter
    • const connectedProvidersAdapter: ConnectedProvidersAdapter
  • apps/coder/src/services/model-resolution/fallback-chain-from-models.ts
    • function parseFallbackModelEntry: (model, contextProviderID, defaultProviderID) => FallbackEntry | undefined
    • function parseFallbackModelObjectEntry: (obj, contextProviderID, defaultProviderID) => FallbackEntry | undefined
    • function findMostSpecificFallbackEntry: (providerID, modelID, chain) => FallbackEntry | undefined
    • function buildFallbackChainFromModels: (fallbackModels) => void
  • apps/coder/src/services/model-resolution/model-availability.ts — function fuzzyMatchModel: (target, available, providers?) => string | null, function isModelAvailable: (targetModel, availableModels) => boolean
  • apps/coder/src/services/model-resolution/model-error-classifier.ts
    • function isRetryableModelError: (error) => boolean
    • function shouldRetryError: (error) => boolean
    • function getNextFallback: (fallbackChain, attemptCount) => FallbackEntry | undefined
    • function hasMoreFallbacks: (fallbackChain, attemptCount) => boolean
    • function selectFallbackProvider: (providers, preferredProviderID?) => string
    • function selectFallbackProviderWithCache: (providers, providerCache, preferredProviderID?) => string
    • ...1 more
  • apps/coder/src/services/model-resolution/model-normalization.ts — function normalizeModel: (model?) => string | undefined, function normalizeModelID: (modelID) => string
  • apps/coder/src/services/model-resolution/model-resolution-pipeline.ts
    • function _setModelResolutionLogImplementationForTesting: (logImplementation) => void
    • function resolveModelPipeline: (request, providerCache) => void
    • type ModelResolutionRequest
    • type ModelResolutionProvenance
    • type ModelResolutionResult
    • type ModelResolutionDeps
  • apps/coder/src/services/model-resolution/model-resolver.ts
    • function resolveModel: (input) => string | undefined
    • function resolveModelWithFallback: (input, connectedProvidersAdapter) => ModelResolutionResult | undefined
    • function normalizeFallbackModels: (models) => void
    • function flattenToFallbackModelStrings: (models) => void
    • type ModelResolutionInput
    • type ModelSource
    • ...2 more
  • apps/coder/src/services/model-resolution/provider-model-id-transform.ts — function transformModelForProvider: (provider, model) => string, function transformModelForProviderDisplay: (provider, model) => string
  • apps/coder/src/services/net/port-utils.ts
    • function reclaimPort: (port) => void
    • function waitForPortRelease: (port, timeoutMs) => Promise
    • function freePort: () => Promise
  • apps/coder/src/services/orphan-worktree-reaper.ts
    • function reapOrphanWorktrees: (sql, log, graceMs, now) => void
    • function createOrphanWorktreeReaper: (deps) => void
    • interface OrphanWorktreeReaperDeps
    • interface OrphanReaperResult
  • apps/coder/src/services/paseo-client.ts
    • class PaseoClientError
    • class PaseoClient
    • interface PaseoAgentListItem
    • interface PaseoAgentDetail
    • interface PaseoSendResult
    • interface PaseoClientConfig
  • apps/coder/src/services/pending_changes.ts
    • function planEdit: (content, oldStr, newStr) => EditPlan
    • function queueEdit: (sql, sessionId, taskId, filePath, oldString, newString, projectRoot, // v2.6 Phase 1-UX) => void
    • function queueCreate: (sql, sessionId, taskId, filePath, content, projectRoot, // See queueEdit) => Promise
    • function queueDelete: (sql, sessionId, taskId, filePath, projectRoot, // See queueEdit) => Promise
    • function applyOne: (sql, changeId, projectRoot) => Promise
    • function applyAll: (sql, sessionId, projectRoot) => Promise<ApplyResult[]>
    • ...6 more
  • apps/coder/src/services/permission-waiter.ts
    • function setPermissionHooks: (next) => void
    • function waitForPermissionResponse: (taskId, sessionId, provider, modeId, params, timeoutMs) => Promise
    • function respondToPermission: (taskId, optionId, updatedInput?, unknown>) => boolean
    • function getPendingPermission: (taskId) => PermissionPrompt | null
    • function waitForElicitationResponse: (taskId, sessionId, provider, modeId, params, timeoutMs) => Promise
    • function cancelPendingPermission: (taskId) => void
    • ...3 more
  • apps/coder/src/services/plan-store.ts
    • function createPlan: (sql, opts) => Promise
    • function getPlan: (sql, planId) => Promise<Plan | null>
    • function listPlans: (sql, projectId) => Promise<Plan[]>
    • function listActivePlans: (sql, projectId) => Promise<Plan[]>
    • function updatePlan: (sql, planId, opts) => Promise<Plan | null>
    • function updatePlanFromRun: (sql, runId, runStatus) => Promise
    • ...5 more
  • apps/coder/src/services/provider-commands.ts
    • function getManifestCommands: (provider) => AgentCommand[]
    • function mergeCommands: (...lists) => AgentCommand[]
    • const PROVIDER_COMMANDS: Record<string, AgentCommand[]>
  • apps/coder/src/services/provider-config-registry.ts
    • function buildResolvedRegistry: (builtins, config) => Map<string, ResolvedProviderDef>
    • function loadProviderConfig: (path) => Map<string, ResolvedProviderDef>
    • function reloadProviderConfig: () => Map<string, ResolvedProviderDef>
    • function getResolvedRegistry: () => Map<string, ResolvedProviderDef>
    • interface ResolvedProviderDef
  • apps/coder/src/services/provider-config.ts
    • function mergeProviderConfigPatch: (current, patch) => CoderProvidersFile
    • function load: (path) => CoderProvidersFile
    • function save: (path, config) => void
  • apps/coder/src/services/provider-diagnostic.ts — function getProviderDiagnostic: (resolved, agentRow, opts) => Promise, interface DiagnosticAgentRow
  • apps/coder/src/services/provider-manifest.ts
    • function getManifestModes: (provider) => ProviderMode[]
    • function getManifestDefaultModeId: (provider) => string | null
    • function isUnattendedMode: (provider, modeId) => boolean
    • interface ProviderManifestEntry
    • const PROVIDER_MANIFEST: Record<string, ProviderManifestEntry>
  • apps/coder/src/services/provider-snapshot.ts
    • function fetchDeepSeekModels: (config) => Promise<ProviderModel[]>
    • function fetchLlamaSwapModels: (config) => Promise<ProviderModel[]>
    • function prefixLlamaSwapModels: (models) => ProviderModel[]
    • function mergeModels: (...lists) => ProviderModel[]
    • function getProviderSnapshot: (sql, config, cwd?, force) => Promise<ProviderSnapshotEntry[]>
    • function clearProviderSnapshotCache: () => void
    • ...2 more
  • apps/coder/src/services/pty-dispatch.ts
    • function dispatchViaPty: (opts) => Promise
    • interface DispatchResult
    • interface PtyDispatchOpts
  • apps/coder/src/services/qwen-settings.ts — function readQwenSettingsModels: () => Promise<ProviderModel[]>
  • apps/coder/src/services/stream-json-parser.ts
    • function makeStreamJsonState: () => StreamJsonState
    • function parseStreamJsonLine: (line, state) => AgentEvent[]
    • function makeStreamJsonParser: () => StreamJsonParser
    • interface StreamJsonUsage
    • interface StreamJsonState
    • interface StreamJsonParser
    • ...1 more
  • apps/coder/src/services/token-analysis/analyzer.ts — function analyzeMessages: (parts) => TokenBreakdown, interface TokenBreakdown
  • apps/coder/src/services/token-analysis/persist.ts
    • function persistTaskBreakdown: (sql, taskId, breakdown) => Promise
    • function getTaskBreakdown: (sql, taskId) => Promise<TokenBreakdown | null>
    • function analyzeAndPersistTaskBreakdown: (sql, taskId, parts) => Promise
  • apps/coder/src/services/tools/adapter.ts — function adaptWriteTool: (tool) => ServerToolDef
  • apps/coder/src/services/tools/inference_context.ts
    • function runWithInferenceContext: (ctx, fn) => void
    • function getInferenceContext: () => InferenceContext
    • interface InferenceContext
  • apps/coder/src/services/tools/types.ts
    • function asPermissionMode: (id) => PermissionMode | undefined
    • interface ToolJsonSchema
    • interface ToolContext
    • interface ToolDef
    • type PermissionMode
  • apps/coder/src/services/tools/write-gate.ts — function denyReadOnly: (operation) => unknown, function finalizeWrite: (context, projectRoot, change, queuedHint) => Promise
  • apps/coder/src/services/worktree-risk.ts — function checkWorktreeWorkAtRisk: (worktreePath, opts?) => Promise, function stashWorktree: (worktreePath, opts?) => Promise<
  • apps/coder/src/services/worktrees.ts
    • function createWorktree: (projectPath, taskId, opts?) => Promise
    • function diffWorktree: (worktreePath, projectPath, opts?) => Promise
    • function cleanupWorktree: (projectPath, taskId) => Promise
    • function ensureSessionWorktree: (sql, projectPath, sessionId, opts?) => Promise
    • function removeSessionWorktree: (sql, projectPath, worktree, opts?) => Promise
    • function closeChatBackendState: (sql, chatId, opts?) => Promise
    • ...4 more
  • apps/coder/src/services/write_guard.ts
    • function isSecretPath: (filePath) => boolean
    • function resolveWritePath: (projectRoot, filePath) => string
    • class WriteGuardError
  • apps/server/src/config.ts — function loadConfig: () => Config, type Config
  • apps/server/src/db.ts
    • function getSql: (config) => Sql
    • function applySchema: (sql) => Promise
    • function pingDb: (sql) => Promise
    • function closeDb: () => Promise
    • type Sql
  • apps/server/src/services/agents.ts
    • function refreshToolNames: () => void
    • function matchToolGlob: (toolName, patterns) => boolean
    • function slugify: (name) => string
    • function parseAgentsMd: (content) => ParseResult
    • function isAgentRegistryMarkdown: (content) => boolean
    • function getAgentsMtimes: (projectPath) => void
    • ...2 more
  • apps/server/src/services/artifacts.ts
    • function deriveMarkdownSlug: (messageContent) => string
    • function deriveHtmlSlug: (payload) => string
    • function deriveHtmlTitle: (html) => string | null
    • function detectHtmlArtifact: (text) => string | null
    • function decideHtmlArtifactWrite: (htmlContent) => HtmlArtifactDecision
    • function writeMarkdownArtifact: (message, 'content'>, ctx) => Promise
    • ...6 more
  • apps/server/src/services/audit/corrections.ts
    • function createCorrection: (params) => UserCorrectionRecord
    • function findCorrections: (records, unknown>[]) => UserCorrectionRecord[]
    • function checkCorrectionConflict: (proposedAction, corrections) => UserCorrectionRecord | null
    • interface UserCorrectionRecord
  • apps/server/src/services/audit/guideline-store.ts
    • class GuidelineDocumentStore
    • interface GuidelineContent
    • interface Guideline
    • interface GuidelineDocument
    • interface GuidelineUpdateParams
    • type GuidelineId
    • ...3 more
  • apps/server/src/services/audit/journey-projection.ts
    • function projectJourneyToGuidelines: (journey, nodes, edges) => ProjectedGuideline[]
    • function detectJourneyBacktrack: (journey, nodes, edges, currentNodeId, previousNodeId) => BacktrackCheck
    • interface ProjectedGuideline
    • interface BacktrackCheck
  • apps/server/src/services/audit/journey-store.ts
    • class JourneyStore
    • interface JourneyNode
    • interface JourneyEdge
    • interface Journey
    • type JourneyId
    • type JourneyNodeId
    • ...1 more
  • apps/server/src/services/audit/runs-dir.ts
    • function findRunsDir: (projectRoot?) => string
    • function ensureRunsDir: (projectRoot?) => string
    • function readCurrentSession: (projectRoot?) => string | null
    • function writeCurrentSession: (sessionId, projectRoot?) => void
    • function clearCurrentSession: (projectRoot?) => void
    • function readIndex: (projectRoot?) => IndexFile
    • ...7 more
  • apps/server/src/services/audit/session-manager.ts
    • function generateSessionId: () => string
    • function isoNow: () => string
    • function createSession: (task, sessionId?, projectRoot?) => string
    • function getSessionDir: (sessionId, projectRoot?) => string
    • function getActiveSession: (projectRoot?) => SessionJson | null
    • function readSession: (sessionId, projectRoot?) => SessionJson | null
    • ...9 more
  • apps/server/src/services/auto_name.ts — function maybeAutoNameChat: (ctx, chatId, sessionId) => Promise
  • apps/server/src/services/background-task.ts
    • function setBackgroundInferenceEnqueuer: (enqueue, chatId, assistantMessageId, user) => void
    • function spawnBackgroundTask: (sql, log, projectId, input, model, agent?, label?) => Promise
    • function getBackgroundTaskStatus: (sql, taskId) => Promise<BackgroundTask | null>
    • function getBackgroundTaskResult: (sql, taskId, chatId) => Promise<
    • function cancelBackgroundTask: (sql, taskId) => Promise
    • interface BackgroundTask
  • apps/server/src/services/boocontext_client.ts
    • function callBoocontext: (req, log?, msg) => void
    • interface BoocontextRequest
    • interface BoocontextResponse
  • apps/server/src/services/broker.ts
    • function createBroker: (log?) => Broker
    • interface Broker
    • type Frame
    • type Listener
  • apps/server/src/services/codecontext_client.ts
    • function callCodecontext: (req, fetcher) => Promise
    • interface CodecontextRequest
    • interface CodecontextResponse
  • apps/server/src/services/coder-notify.ts — function notifyCoderClose: (kind, id, log?, 'debug'>, fetcher) => Promise, type CoderCloseKind
  • apps/server/src/services/compaction.ts
    • function usable: (contextLimit) => number
    • function isOverflow: (usage, contextLimit) => boolean
    • function estimate: (messages) => number
    • function turns: (messages) => Turn[]
    • function select: (messages, contextLimit, tailTurns) => SelectResult
    • function deriveFilesRead: (head) => string[]
    • ...8 more
  • apps/server/src/services/export-formatter.ts — function formatJson: (chat, messages, model) => string, function formatMarkdown: (chat, messages, model) => string
  • apps/server/src/services/file_index.ts — function getProjectFiles: (projectId, projectRoot) => Promise<string[]>
  • apps/server/src/services/file_ops.ts
    • function listDir: (projectRoot, relPath, opts?) => Promise
    • function viewFile: (projectRoot, relPath, opts?) => Promise
    • function grep: (projectRoot, pattern, opts?) => Promise
    • function findFiles: (projectRoot, pattern?, opts?) => Promise
    • interface FileEntry
    • interface ListDirResult
    • ...4 more
  • apps/server/src/services/git_diff.ts
    • function parseNameStatus: (output) => void
    • function parseNumStatLine: (line) => void
    • function splitDiffByFile: (diffText) => Map<string, string>
    • function classifyDiffBody: (body, cap) => 'diff' | 'binary' | 'too_large'
    • function autoSelectMode: (isDirty) => GitDiffMode
    • function canCommit: (files) => boolean
    • ...17 more
  • apps/server/src/services/git_meta.ts — function getGitMeta: (rootPath) => Promise<GitMeta | null>, interface GitMeta
  • apps/server/src/services/gitea.ts
    • function createGiteaRepo: (cfg, name, options) => Promise
    • class GiteaRepoExistsError
    • interface GiteaConfig
    • interface GiteaRepo
  • apps/server/src/services/grant_resolver.ts — function resolveGrantRoot: (sql, requestedPath, projectRoot, whitelistRoot) => Promise, type GrantResolution
  • apps/server/src/services/hooks.ts
    • function loadHooksConfig: (path) => HooksConfig
    • function reloadHooksConfig: () => HooksConfig
    • function createHookRunner: () => HookRunner
    • interface HookConfig
    • interface HooksConfig
    • interface PreToolUsePayload
    • ...10 more
  • apps/server/src/services/inference/budget.ts — function resolveToolBudget: (agent) => number
  • apps/server/src/services/inference/compute-diff.ts
    • function computeDiff: (oldStr, newStr, filePath) => string
    • function isWriteTool: (name) => boolean
    • function diffFromToolArgs: (name, args, unknown>, filePath?) => string
    • const WRITE_TOOL_NAMES
  • apps/server/src/services/inference/content-flusher.ts — function createContentFlusher: (sql, messageId, getContent) => void, interface ContentFlusher
  • apps/server/src/services/inference/dcp/messages.ts
    • function toDcpMessages: (parts) => DcpMessage[]
    • function fromDcpMessages: (msgs) => any[]
    • interface DcpMessage
  • apps/server/src/services/inference/dcp/state.ts
    • function getDcpState: (chatId) => ChatDcpState | undefined
    • function setDcpState: (chatId, messageCount) => void
    • function clearDcpState: (chatId) => void
    • function shouldTransform: (chatId, messageCount) => boolean
  • apps/server/src/services/inference/dcp/strategies/deduplication.ts — function deduplicate: (messages) => void
  • apps/server/src/services/inference/dcp/strategies/purge-errors.ts — function purgeErrors: (messages, windowSize) => void
  • apps/server/src/services/inference/dcp/transform.ts
    • function transformMessages: (chatId, messages) => TransformResult
    • interface TransformStats
    • interface TransformResult
  • apps/server/src/services/inference/error-handler.ts
    • function handleAbortOrError: (ctx, args, accumulated, err) => Promise
    • function finalizeStreamedRow: (ctx, opts) => void
    • function finalizeEmpty: (ctx, args) => Promise
    • function finalizeCompletion: (ctx, args, result, startedAt, session) => Promise
  • apps/server/src/services/inference/llama-args-validator.ts
    • function validateExtraArgs: (args?) => string[]
    • function isManagedFlag: (flag) => boolean
    • function stripShadowingFlags: (args, opts?) => string[]
    • interface StripOptions
  • apps/server/src/services/inference/loop-detectors.ts
    • function detectContentRepeat: (messages) => LoopDetectionResult
    • function detectToolLoop: (toolNames) => LoopDetectionResult
    • function detectDoomLoop: (messages, toolNames) => LoopDetectionResult
    • interface LoopDetectionResult
  • apps/server/src/services/inference/mistake-tracker.ts
    • function freshMistakeState: () => MistakeState
    • function recordStep: (state, outcome) => void
    • function detectMistakePattern: (state) => 'nudge' | 'escalate' | null
    • interface MistakeState
    • type FailureKind
    • const MISTAKE_THRESHOLD
    • ...1 more
  • apps/server/src/services/inference/multi-modal.ts
    • function hasImageAttachments: (_message) => boolean
    • function imageAttachmentsToParts: (attachments) => Array<
    • interface ImageAttachment
  • apps/server/src/services/inference/parts.ts
    • function insertParts: (sql, parts) => Promise
    • function partsFromAssistantMessage: (args) => void
    • function partsFromToolMessage: (args) => Omit<PartInsert, 'message_id'>[]
    • interface PartInsert
    • type PartKind
  • apps/server/src/services/inference/payload.ts
    • function buildMessagesPayload: (session, project, history, agent, log?) => Promise<OpenAiMessage[]>
    • function loadContext: (sql, sessionId, chatId) => Promise<
    • function maybeFlagForCompaction: (ctx, chatId, updated) => Promise
    • interface OpenAiMessage
  • apps/server/src/services/inference/provider.ts
    • function isDeepSeekModel: (modelId) => boolean
    • function resolveRoute: (agent, config?, modelId?) => RoutingInfo
    • function upstreamModel: (config, modelId, agent?) => LanguageModel
    • function resolveModelEndpoint: (config, modelId) => void
    • function resetDeepSeekProvider: () => void
    • interface RoutingInfo
    • ...1 more
  • apps/server/src/services/inference/prune.ts
    • function selectPruneTargets: (partsNewestFirst, tailStartCreatedAt) => void
    • function prune: (args) => Promise
    • interface PruneResult
    • interface PartForPrune
    • const PROTECTED_TOKENS
    • const PRUNE_TRIGGER_TOKENS
  • apps/server/src/services/inference/sentinel-summaries.ts
    • function runCapHitSummary: (ctx, args, session, project, history, agent, budget) => Promise
    • function runDoomLoopSummary: (ctx, args, session, project, history, agent, loop, unknown> }) => Promise
    • function runStepCapSummary: (ctx, args, session, project, history, agent, steps, cap) => Promise
    • function insertMistakeRecoverySentinel: (ctx, sessionId, chatId, opts) => Promise
  • apps/server/src/services/inference/sentinels.ts
    • function detectDoomLoop: (recentToolCalls) => void
    • function isCapHitSentinel: (m) => boolean
    • function isDoomLoopSentinel: (m) => boolean
    • function isMistakeRecoverySentinel: (m) => boolean
    • function isAnySentinel: (m) => boolean
    • const DOOM_LOOP_THRESHOLD
    • ...1 more
  • apps/server/src/services/inference/state-graph.ts
    • function createDefaultGraph: () => GraphNode[]
    • function runGraph: (ctx, args, extra) => Promise
    • interface GraphState
    • interface GraphResult
    • type GraphNodeType
  • apps/server/src/services/inference/step-decision.ts
    • function decideStep: (input) => PreStepDecision
    • function decidePostToolAction: (action, mistakeTracker) => PostToolDecision
    • type PreStepDecision
    • type PostToolDecision
  • apps/server/src/services/inference/stream-error-classifier.ts — function classifyStreamError: (err) => StreamErrorKind, type StreamErrorKind
  • apps/server/src/services/inference/stream-phase-adapter.ts
    • function samplerOptsFromAgent: (agent) => SamplerOpts
    • function streamCompletion: (ctx, model, messages, opts, onDelta) => void
    • interface StreamAdapterContext
    • interface StreamOptions
    • type SamplerOpts
    • const STALL_TIMEOUT_MS
  • apps/server/src/services/inference/stream-phase.ts — function executeStreamPhase: (ctx, args, session, messages, state, agent, // v1.11.8, web_search and web_fetch are stripped from the // tool list sent to the LLM, so the model can't even attempt them. webToolsEnabled) => Promise
  • apps/server/src/services/inference/supervisor.ts — function resolveSupervisorTurn: (latestUserMessage, agents, fallbackModel?) => Promise<SupervisorRoute | null>, interface SupervisorRoute
  • apps/server/src/services/inference/tool-call-parser.ts
    • function stripToolMarkup: (text, opts?) => string
    • function extractToolCallBlocks: (buffer, log?) => ToolCallExtraction
    • interface ParsedCall
    • interface ToolCallExtraction
  • apps/server/src/services/inference/tool-input-repair.ts — function repairToolInput: (schema, unknown> | undefined, args, unknown>) => void, interface ToolInputRepair
  • apps/server/src/services/inference/tool-phase.ts — function executeToolPhase: (ctx, args, result, startedAt, session, projectRoot, agent?, turnNumber?) => Promise, interface ToolPhaseResult
  • apps/server/src/services/inference/tool-shim.ts
    • function extractToolCalls: (text) => ParsedToolCall[]
    • function hasToolCallMarkup: (text) => boolean
    • interface ParsedToolCall
  • apps/server/src/services/inference/tool-suggestions.ts
    • function levenshtein: (a, b) => number
    • function suggestToolName: (name, available) => string | null
    • function formatUnknownToolError: (name, available) => string
  • apps/server/src/services/inference/turn-config.ts
    • function resolveTurnConfig: (agent) => TurnConfig
    • interface TurnConfig
    • const MAX_STEPS
  • apps/server/src/services/inference/turn.ts
    • function runAssistantTurn: (ctx, args) => Promise
    • function runInference: (ctx, sessionId, chatId, assistantMessageId, signal?) => Promise
    • function runInferenceWithModel: (ctx, sessionId, chatId, assistantMessageId, modelOverride, compareGroupId, signal?) => Promise
    • function createInferenceRunner: (ctx, 'publishUser'>, publishUserFn, frame) => void
  • apps/server/src/services/mcp-client.ts
    • function initialize: (entries, logger) => Promise
    • function callTool: (prefixedName, args, unknown>) => Promise
    • function getServerPermission: (prefixedToolName) => McpPermission
    • function setServerPermission: (serverName, permission) => void
    • function getServerName: (prefixedToolName) => string | null
    • function getTools: () => ToolDef<Record<string, unknown>>[]
    • ...6 more
  • apps/server/src/services/mcp-config.ts
    • function substituteEnvVars: (value, log, unsetVars?) => unknown
    • function loadMcpConfig: (configPath, log) => McpServerEntry[]
    • interface McpServerEntry
    • type McpServerConfig
  • apps/server/src/services/memory/bm25.ts — class Bm25Ranker
  • apps/server/src/services/memory/embeddings.ts
    • function isEmbeddingAvailable: () => boolean
    • function initEmbeddings: (modelPath?) => Promise
    • function embed: (texts) => Promise<number[][] | null>
  • apps/server/src/services/memory/entries.ts — function parseMemoryEntries: (fileName, markdown) => MemoryEntry[], interface MemoryEntry
  • apps/server/src/services/memory/paths.ts
    • function getMemoryRoot: (projectRoot) => string
    • function getTopicDir: (root, topic) => string
    • function ensureMemoryScaffold: (root) => Promise
    • type MemoryTopic
  • apps/server/src/services/memory/prompt.ts — function formatMemoryBlock: (entries) => string
  • apps/server/src/services/memory/recall.ts
    • function rankByRelevance: (query, entries) => MemoryEntry[]
    • function rankByHybrid: (query, entries) => Promise<MemoryEntry[]>
    • function loadMemoryForSession: (projectRoot, _sessionId?, query?) => Promise<string[]>
  • apps/server/src/services/memory/scan.ts
    • function scanMemoryScopes: (scope) => Promise<MemoryEntry[]>
    • function scanProjectMemory: (projectRoot) => Promise<MemoryEntry[]>
    • interface MemoryScope
  • apps/server/src/services/memory/store.ts — function readTopicFiles: (root, topic) => Promise<Map<string, string>>, function writeEntry: (root, topic, title, content, tags) => Promise
  • apps/server/src/services/model-context.ts
    • function configureModelContext: (opts) => void
    • function getModelContext: (model) => Promise<ModelContext | null>
    • function invalidateModelContext: (model?) => void
    • interface ModelContext
  • apps/server/src/services/path_guard.ts
    • function resolveProjectRoot: (projectPath) => Promise
    • function pathGuard: (projectRoot, requested, extraRoots) => Promise
    • class PathScopeError
  • apps/server/src/services/project_bootstrap.ts
    • function sanitizeFolderName: (raw) => string
    • function bootstrapProject: (config, log, options) => Promise
    • class BootstrapNameError
    • class BootstrapCollisionError
    • class BootstrapPathError
    • interface BootstrapResult
  • apps/server/src/services/read_tab_by_number.ts
    • function executeReadTabByNumber: (input, sql, sessionId) => Promise
    • type ReadTabByNumberInputT
    • const readTabByNumber: ToolDef
  • apps/server/src/services/secret_guard.ts
    • function isSecretPath: (relPath) => boolean
    • function filterSecretEntries: (entries, pathOf) => void
    • class SecretBlockedError
    • const DEFAULT_SECURITY_IGNORE_FILETYPES: ReadonlyArray
  • apps/server/src/services/session-snapshots.ts
    • function saveAgentSnapshot: (sql, chatId, data) => Promise
    • function loadAgentSnapshot: (sql, chatId) => Promise<AgentSnapshot | null>
    • function deleteAgentSnapshot: (sql, chatId) => Promise
    • interface AgentSnapshot
  • apps/server/src/services/skill-invoke.ts
    • function runSkillInvokeTransaction: (sql, args) => Promise<
    • function buildSkillInvokeSyntheticFrames: (chatId, result, toolCall, skillBody) => SkillInvokeSessionFrame[]
    • function buildSkillInvokeUserFrames: (chatId, userMessageId, userText) => SkillInvokeSessionFrame[]
    • interface SkillInvokeTransactionResult
    • interface SkillInvokeToolCall
    • type SkillInvokeSessionFrame
    • ...1 more
  • apps/server/src/services/skills.ts
    • function listSkills: () => Promise<Skill[]>
    • function findSkills: (query) => Promise<SkillSummary[]>
    • function getSkillBody: (name) => Promise<string | null>
    • function getSkillResource: (name, relativePath) => Promise
    • interface Skill
    • interface SkillSummary
    • ...2 more
  • apps/server/src/services/synthesisPipeline.ts
    • function runSynthesisPass: (p) => Promise
    • interface SynthesisParams
    • const SYNTHESIS_TOOLS: ReadonlySet
  • apps/server/src/services/system-prompt.ts
    • function loadContainerGuidance: () => Promise<string | null>
    • function getContainerGuidance: () => Promise<string | null>
    • function _resetContainerGuidanceCacheForTests: () => void
    • function _resetPrefixObserverForTests: () => void
    • function buildSystemPromptWithFingerprint: (project, session, agent) => Promise<
    • function buildSystemPrompt: (project, session, agent) => Promise
    • ...2 more
  • apps/server/src/services/task-model.ts — function taskModelCompletion: (opts) => Promise
  • apps/server/src/services/task-search-rewrite.ts — function rewriteSearchQuery: (userMessage) => Promise
  • apps/server/src/services/tool-traces.ts
    • function insertToolTrace: (sql, insert) => Promise
    • function updateToolTrace: (sql, id, updates) => Promise<ToolTrace | null>
    • interface ToolTrace
    • interface ToolTraceInsert
    • interface ToolTraceUpdate
  • apps/server/src/services/tools/background-subagent-tools.ts
    • function executeSpawnSubagent: (input, sql, sessionId) => Promise<Record<string, unknown>>
    • function executeSubagentStatus: (input, sql) => Promise<Record<string, unknown>>
    • function executeSubagentResult: (input, sql) => Promise<Record<string, unknown>>
    • type SpawnSubagentInputT
    • type SubagentStatusInputT
    • type SubagentResultInputT
    • ...6 more
  • apps/server/src/services/tools/codecontext/factory.ts — function makeCodecontextTool: (opts, unknown>; mapArgs) => void
  • apps/server/src/services/tools/codecontext/get_code_health.ts
    • function executeGetCodeHealth: (input, projectPath) => Promise
    • type GetCodeHealthInputT
    • const GetCodeHealthInput
    • const getCodeHealth: ToolDef
  • apps/server/src/services/tools/codecontext/get_code_impact.ts
    • function executeGetCodeImpact: (input, projectPath) => Promise
    • type GetCodeImpactInputT
    • const GetCodeImpactInput
    • const getCodeImpact: ToolDef
  • apps/server/src/services/tools/codecontext/get_code_map.ts
    • function executeGetCodeMap: (input, projectRoot) => Promise
    • interface CodeMapResponse
    • type GetCodeMapInputT
    • const GetCodeMapInput
    • const getCodeMap: ToolDef
  • apps/server/src/services/tools/codecontext/get_type_info.ts
    • function executeGetTypeInfo: (input, _projectPath?) => Promise
    • type GetTypeInfoInputT
    • const GetTypeInfoInput
    • const getTypeInfo: ToolDef
  • apps/server/src/services/tools/codecontext/get_wiki_article.ts
    • function executeGetWikiArticle: (input, projectPath) => Promise
    • type GetWikiArticleInputT
    • const GetWikiArticleInput
    • const getWikiArticle: ToolDef
  • apps/server/src/services/tools/execute-command.ts
    • function executeRunCommand: (input, projectRoot) => Promise
    • type RunCommandInputT
    • type RunCommandOutput
    • const runCommand: ToolDef
  • apps/server/src/services/tools/registry.ts — function appendMcpTools: (mcpTools) => void, function toolJsonSchemas: () => ToolJsonSchema[]
  • apps/server/src/services/tools/tiers.ts
    • function resolveToolTier: (tier) => readonly string[]
    • const CORE_TOOL_NAMES
    • const STANDARD_TOOL_NAMES
  • apps/server/src/services/truncate.ts
    • function storeTruncation: (fullContent) => Promise
    • function readTruncation: (id) => Promise<string | null>
    • function truncateIfNeeded: (args) => Promise<
    • function cleanupTruncations: (args, msg) => void
    • const TRUNCATION_DIR
    • const TRUNCATION_TTL_MS
    • ...1 more
  • apps/server/src/services/url_guard.ts — function isPublicUrl: (input) => UrlGuardResult, interface UrlGuardResult
  • apps/server/src/services/web/html-to-md.ts — function htmlToMarkdown: (sourceHtml) => string
  • apps/server/src/services/web_fetch.ts
    • function executeWebFetch: (input, fetcher) => Promise
    • type WebFetchInputT
    • type WebFetchOutput
    • const webFetch: ToolDef
  • apps/server/src/services/web_search.ts
    • function executeWebSearch: (input, searxngUrl, fetcher) => Promise
    • interface WebSearchOutput
    • type WebSearchInputT
    • const webSearch: ToolDef
  • apps/server/src/services/workflow/catalog.ts
    • function fingerprintAgentTask: (prompt, spec, unknown>, args) => string
    • function getBuiltinWorkflows: () => BuiltinWorkflow[]
    • function getBuiltinWorkflow: (name) => BuiltinWorkflow | undefined
    • function mergeBuiltinWorkflows: (fileWorkflows) => Array<
    • interface BuiltinWorkflow
    • const meta
  • apps/server/src/services/workflow/discovery.ts
    • function isBuiltinWorkflow: (meta) => boolean
    • function discoverWorkflows: (projectRoot) => WorkflowMeta[]
    • function findWorkflow: (name, projectRoot) => WorkflowMeta | undefined
    • function isValidWorkflowPath: (filePath) => boolean
    • interface WorkflowMeta
  • apps/server/src/services/workflow/manager.ts
    • class WorkflowManager
    • interface WorkflowMetaInfo
    • type WorkflowEventHandler
  • apps/server/src/services/workflow/resumability.ts
    • function cacheKey: (spec, args) => string
    • function getCachedResult: (key) => CachedResult | null
    • function setCachedResult: (key, result) => void
    • function invalidateRun: (runKey) => void
    • function clearCache: () => void
    • function cacheSize: () => number
    • ...1 more
  • apps/server/src/services/workflow/sandbox.ts
    • function transformEsmToCjs: (code) => string
    • function name: (...) => void
    • function isEsmSyntax: (code) => boolean
    • function buildSandbox: (context) => Record<string, unknown>
    • function loadWorkflowScript: (sourceFile, context) => (...args: unknown[]) => Promise
    • function loadWorkflowScriptFromCode: (code, context, filename?) => (...args: unknown[]) => Promise
    • ...3 more
  • apps/server/src/utils/string-utils.ts — function stripQuotes: (s) => string
  • apps/web/src/api/client.ts
    • class ApiError
    • interface AgentSessionInfo
    • interface CoderCheckpoint
    • interface CoderRestoreResult
    • const api
  • apps/web/src/data/acp-provider-catalog.ts
    • function buildAcpProviderConfigPatch: (entry) => ProviderConfigPatch
    • interface AcpCatalogEntry
    • const ACP_PROVIDER_CATALOG: AcpCatalogEntry[]
  • apps/web/src/hooks/terminal/useTerminalFit.ts
    • function cellSize: (term, container) => void
    • function useTerminalFit: ({...}, containerRef, sessionId, paneId }) => TerminalFit
    • interface TerminalFit
  • apps/web/src/hooks/terminal/useTerminalSelection.ts
    • function useTerminalSelection: ({...}, containerRef, sessionId, paneId, label, send, }) => TerminalSelection
    • interface TerminalSelectionActions
    • interface TerminalSelection
  • apps/web/src/hooks/terminal/useTerminalSocket.ts
    • function useTerminalSocket: ({...}, sessionId, paneId, description, parentAgent, fit, getSize, setSize, }) => TerminalSocket
    • interface TerminalSocket
    • type ConnState
  • apps/web/src/hooks/useActivePane.ts
    • function setActivePaneInfo: (next) => void
    • function clearActivePane: () => void
    • function useActivePane: () => ActivePaneSnapshot
    • interface ActivePaneSnapshot
  • apps/web/src/hooks/useAgentSessions.ts — function refreshAgentSessions: (sessionId) => Promise<AgentSessionInfo[]>, function useAgentSessions: (sessionId) => void
  • apps/web/src/hooks/useAgentStatus.ts
    • function useAgentStatus: () => void
    • interface AgentStatusEntry
    • type AgentStatus
  • apps/web/src/hooks/useArtifactDownload.ts — function useArtifactDownload: (chatId, messageId, format) => void
  • apps/web/src/hooks/useChatStatus.ts
    • function useChatStatus: (chatId) => DerivedStatus
    • type RawStatus
    • type DerivedStatus
  • apps/web/src/hooks/useChatThroughput.ts
    • function recordUsage: (chatId, data) => void
    • function useChatThroughput: (chatId) => ThroughputSample | null
    • interface ThroughputSample
  • apps/web/src/hooks/useCoderUserEvents.ts — function useCoderUserEvents: () => void
  • apps/web/src/hooks/useDiffPreferences.ts — function useDiffPreferences: () => void, interface DiffPreferences
  • apps/web/src/hooks/useDraftPersistence.ts — function useDraftPersistence: (chatId) => DraftPersistenceResult, interface DraftPersistenceResult
  • apps/web/src/hooks/useGitDiff.ts — function useGitDiff: (projectId, hideWhitespace) => void
  • apps/web/src/hooks/useLongPress.ts — function useLongPress: (callback) => void
  • apps/web/src/hooks/useProjectGit.ts — function useProjectGit: (projectId) => GitMeta | null
  • apps/web/src/hooks/useProviderSnapshot.ts — function refreshProviderSnapshot: (cwd?) => Promise<ProviderSnapshotEntry[]>, function useProviderSnapshot: (cwd?) => ProviderSnapshotEntry[] | null
  • apps/web/src/hooks/usePullToRefresh.ts — function usePullToRefresh: (onRefresh) => void
  • apps/web/src/hooks/useSessionChats.ts
    • function useSessionChats: (sessionId, opts) => UseSessionChatsResult
    • interface UseSessionChatsOpts
    • interface UseSessionChatsResult
  • apps/web/src/hooks/useSessionStream.ts — function useSessionStream: (sessionId) => void
  • apps/web/src/hooks/useSessions.ts — function useSessions: (projectId) => void
  • apps/web/src/hooks/useSidebar.ts — function useSidebar: () => void
  • apps/web/src/hooks/useSkills.ts — function useSkills: () => void
  • apps/web/src/hooks/useTerminals.ts — function useTerminals: () => TerminalRegistration[]
  • apps/web/src/hooks/useUserEvents.ts — function useUserEvents: () => void
  • apps/web/src/hooks/useViewport.ts — function useViewport: () => ViewportSnapshot, interface ViewportSnapshot
  • apps/web/src/hooks/useWorkspacePanes.ts
    • function activePaneChatId: (pane) => string | undefined
    • function useWorkspacePanes: (sessionId) => UseWorkspacePanesResult
    • interface UseWorkspacePanesResult
    • const MAX_PANES
  • apps/web/src/hooks/wsReconnectToast.ts — function createWsReconnectToast: (opts) => WsReconnectToast, interface WsReconnectToast
  • apps/web/src/lib/anim.ts
    • function getAnimBg: () => boolean
    • function setAnimBg: (on) => void
    • function setAnimDensity: (v) => void
    • function setAnimSpeed: (v) => void
    • function setAnimOpacity: (v) => void
    • function useAnimBg: () => boolean
    • ...3 more
  • apps/web/src/lib/attachments.ts
    • function looksBinary: (content) => boolean
    • function inferLanguage: (filename) => string | null
    • function flattenToMessage: (attachments, text) => string
    • type Attachment
    • const MAX_FILE_SIZE_BYTES
    • const PASTE_INLINE_MAX_LINES
    • ...1 more
  • apps/web/src/lib/coder-session.ts — function isCoderSessionName: (name) => boolean
  • apps/web/src/lib/coder-tools.ts
    • function wireToolCallToRun: (wire) => ToolRun
    • function mergeWireToolCall: (existing, incoming, unknown> }) => CoderToolCallWire[]
    • interface AcpWireMeta
    • interface CoderToolCallWire
  • apps/web/src/lib/format.ts
    • function relTime: (iso) => string
    • function formatRelative: (iso) => string
    • function formatAgo: (iso) => string
  • apps/web/src/lib/model-label.ts — function formatModelLabel: (raw) => string
  • apps/web/src/lib/modelName.ts — function shortenModelName: (model) => string | null
  • apps/web/src/lib/permission-mode.ts
    • function nativeModeForPermission: (mode, modes, defaultModeId) => string | null
    • function permissionForModeId: (modeId, modes) => PermissionMode
    • function availablePermissionModes: (modes) => Array<
    • type PermissionMode
    • const PERMISSION_LABELS: Record<PermissionMode, string>
  • apps/web/src/lib/projectUrls.ts — function giteaUrlFor: (project) => string
  • apps/web/src/lib/slash-command.ts
    • function isSlashCommandToken: (value) => boolean
    • function slashQuery: (value) => string
    • function parseSlashInput: (text) => void
    • function mergeCommandsByName: (...lists) => T[]
    • interface SlashCommandItem
  • apps/web/src/lib/terminal-protocol.ts
    • function encodeInput: (text) => Uint8Array
    • function encodeResize: (cols, rows) => string
    • function parseServerFrame: (data) => ServerControlFrame | null
    • type ServerControlFrame
  • apps/web/src/lib/theme.ts
    • function isThemeId: (s) => s is ThemeId
    • function applyTheme: (id, mode) => void
    • function setTheme: (id, mode) => Promise
    • function useTheme: () => ThemeState
    • interface ThemeMeta
    • type ThemeId
    • ...5 more
  • apps/web/src/lib/tool-utils.ts
    • function isMcpTool: (name) => boolean
    • function extractServerName: (name) => string | null
    • function extractToolName: (name) => string | null
    • const BUILT_IN_TOOLS
  • apps/web/src/lib/utils.ts — function cn: (...inputs) => void
  • apps/web/src/stores/useDiffCommentStore.ts
    • function useDiffComments: (sessionId, mode) => void
    • interface DiffComment
    • interface DiffCommentTarget
  • apps/web/src/utils/diff-layout.ts
    • function parseDiff: (diffBody) => ParsedDiffFile[]
    • function buildSplitRows: (file) => SplitRow[]
    • function reconstructNewContent: (hunks) => string
    • interface DiffLine
    • interface DiffHunk
    • interface ParsedDiffFile
    • ...3 more
  • conductor/src/contracts.ts
    • function produceContract: (contracts) => string
    • function reviewContract: (contracts) => string
    • type Contract
    • const EVIDENCE_PRODUCE
    • const EVIDENCE_REVIEW
    • const YAGNI_PRODUCE
    • ...1 more
  • conductor/src/dispatch.ts
    • function loadPersona: (agent) => Promise
    • function dispatchAgent: (agent, task, opts) => Promise
    • function cleanOutput: (raw) => string
  • conductor/src/flow.ts — function runFlow: (flow, input, opts) => Promise, interface RunOptions
  • conductor/src/flows/_util.ts — function q, function repoLine
  • conductor/src/flows/index.ts
    • function describeFlows: () => string
    • function getFlow: (name) => Flow | undefined
    • const FLOWS: Record<string, Flow>
    • const FLOW_NAMES: string[]
  • conductor/src/render.ts — function slugify: (s) => string
  • conductor/src/spine.ts
    • function readBand: (input) => Band
    • function fastNote: (ctx) => string
    • function buildSpineFlow: (spine) => Flow
  • data/skills/superpowers/systematic-debugging/condition-based-waiting-example.ts
    • function waitForEvent: (threadManager, threadId, eventType, timeoutMs) => Promise
    • function waitForEventCount: (threadManager, threadId, eventType, count, timeoutMs) => Promise<LaceEvent[]>
    • function waitForEventMatch: (threadManager, threadId, predicate) => void
  • packages/ion/src/cli/commands/abandon.ts — function abandonCommand: (args, options) => Promise
  • packages/ion/src/cli/commands/approve.ts — function approveCommand: (args, options) => Promise
  • packages/ion/src/cli/commands/cleanup.ts — function cleanupCommand: (args, options) => Promise
  • packages/ion/src/cli/commands/convert.ts — function convertCommand: (args, options) => Promise
  • packages/ion/src/cli/commands/list.ts — function listCommand: (_args, options) => Promise
  • packages/ion/src/cli/commands/reject.ts — function rejectCommand: (args, options) => Promise
  • packages/ion/src/cli/commands/resume.ts — function resumeCommand: (args, options) => Promise
  • packages/ion/src/cli/commands/run.ts — function runCommand: (args, options) => Promise
  • packages/ion/src/cli/commands/runs.ts — function runsCommand: (args, options) => Promise
  • packages/ion/src/cli/commands/status.ts — function statusCommand: (_args, options) => Promise
  • packages/ion/src/cli/commands/validate.ts — function validateCommand: (args, options) => Promise
  • packages/ion/src/cli/index.ts — function main: (argv) => void
  • packages/ion/src/cli/utils.ts
    • function formatDuration: (ms) => string
    • function formatTimestamp: (date) => string
    • function truncate: (str, max) => string
    • function printTable: (rows, unknown>[], columns) => void
    • function printJson: (data) => void
    • function parseArgs: (argv) => void
    • ...3 more
  • packages/ion/src/engine/command-validation.ts — function isValidCommandName: (name) => boolean
  • packages/ion/src/engine/condition-evaluator.ts — function evaluateCondition: (expression, nodeOutputs, Record<string, unknown>>) => boolean, class ConditionError
  • packages/ion/src/engine/dag-executor.ts
    • function buildTopologicalLayers: (nodes) => DagNode[][]
    • function checkTriggerRule: (node, nodeOutputs, NodeOutput>) => 'run' | 'skip'
    • function executeNodeInternal: (node, deps, platform, conversationId, cwd, config, nodeOutputs, NodeOutput>, workflowVariables, unknown>) => Promise
    • function executeScriptNode: (node, cwd, envVars, string>, artifactsDir) => Promise
    • function handleApprovalNode: (node, deps, platform, conversationId, workflowRunId, nodeOutputs, NodeOutput>, workflowVariables, unknown>) => Promise
    • function handleLoopNode: (node, deps, platform, conversationId, cwd, config, nodeOutputs, NodeOutput>, workflowVariables, unknown>) => Promise
    • ...2 more
  • packages/ion/src/engine/event-emitter.ts
    • function getWorkflowEventEmitter: () => WorkflowEventEmitter
    • class WorkflowEventEmitter
    • interface WorkflowEventBase
    • interface WorkflowStartedEvent
    • interface WorkflowCompletedEvent
    • interface WorkflowFailedEvent
    • ...11 more
  • packages/ion/src/engine/executor-shared.ts
    • function substituteWorkflowVariables: (template, context) => string
    • function buildPromptWithContext: (template, context, issueContext?) => string
    • function classifyError: (error) => ErrorClassification
    • function safeSendMessage: (platform, conversationId, message, metadata?, unknown>) => Promise
    • function detectCompletionSignal: (output, until) => boolean
    • function stripCompletionTags: (output, until) => string
    • ...5 more
  • packages/ion/src/engine/executor.ts
    • function executeWorkflow: (deps, platform, conversationId, cwd, workflow, userMessage, opts) => Promise
    • function hydrateResumableRun: (deps, candidate) => Promise
    • function resolveProjectPaths: (_deps, cwd, workflowRunId, codebaseId?) => ProjectPaths
    • interface WorkflowExecutionOptions
    • interface WorkflowExecutionResult
    • interface HydratedResumableRun
    • ...1 more
  • packages/ion/src/engine/model-validation.ts
    • function isLiteralSpec: (spec) => spec is LiteralModelSpec
    • function buildAiProfile: (opts) => AiProfile
    • function resolveModelSpec: (profile, modelRef) => LiteralModelSpec
    • interface LiteralModelSpec
    • interface ModelAliasPreset
    • interface AiProfileTiers
    • ...2 more
  • packages/ion/src/engine/output-ref.ts
    • function declaredFieldsFromSchema: (outputFormat, unknown> | string | undefined) => Set
    • function resolveNodeOutputField: (nodeOutput, unknown>, nodeId, field, declaredFields?) => OutputRefResult
    • class OutputRefError
    • interface OutputRefResult
    • type OutputRefKind
  • packages/ion/src/engine/utils.ts
    • function substituteWorkflowVariables: (template, variables, unknown>) => string
    • function substituteNodeOutputRefs: (prompt, nodeOutputs, NodeOutput>, escapedForBash) => string
    • function resolveNodeOutputField: (output, field) => string
    • function buildPromptWithContext: (prompt, variables, unknown>, nodeOutputs, NodeOutput>, escapedForBash) => string
    • function evaluateCondition: (condition, variables, unknown>) => boolean
    • function classifyError: (error) => ErrorCategory
    • ...10 more
  • packages/ion/src/format/sop-discovery.ts — function discoverSopFiles: (cwd, globFn) => Promise<string[]>, type GlobFn
  • packages/ion/src/format/sop-parser.ts
    • function parseSopContent: (markdown) => SopDocument
    • interface SopParameter
    • interface SopStep
    • interface SopDocument
  • packages/ion/src/format/sop-to-yaml.ts — function convertSopToWorkflowYaml: (sop) => string
  • packages/ion/src/schema/dag-node.ts
    • function isBashNode: (node) => node is BashNode
    • function isScriptNode: (node) => node is ScriptNode
    • function isLoopNode: (node) => node is LoopNode
    • function isApprovalNode: (node) => node is ApprovalNode
    • function isCancelNode: (node) => node is CancelNode
    • function isPromptNode: (node) => node is PromptNode
    • ...27 more
  • packages/ion/src/store/fs-store.ts — function createFsStore: (basePath) => IWorkflowStore
  • packages/ion/src/store/pg-store.ts — function createPostgresStore: (connectionString) => Promise
  • packages/ion/src/store/sqlite-store.ts — function createSqliteStore: (dbPath) => Promise

Config

Environment Variables

  • AUDIT_DOT_DIR required — apps/server/src/services/audit/runs-dir.ts
  • BOOCODE_DATA_DIR required — apps/server/src/routes/inference-settings.ts
  • BOOCODE_TOOLS required — apps/server/src/services/agents.ts
  • BOOCODE_TRUNCATION_DIR required — apps/server/src/services/tests/truncate.test.ts
  • BOOCODER_DEV_URL required — apps/web/vite.config.ts
  • BOOCODER_URL required — apps/coder/src/cli.ts
  • BOOTERM_DEV_URL required — apps/web/vite.config.ts
  • BOOTERM_SSH_HOST required — apps/booterm/src/pty/manager.ts
  • BOOTERM_SSH_USER required — apps/booterm/src/pty/manager.ts
  • BOOTSTRAP_ROOT (has default) — .env.example
  • BRAINSTORM_DIR required — data/skills/superpowers/brainstorming/scripts/server.cjs
  • BRAINSTORM_HOST required — data/skills/superpowers/brainstorming/scripts/server.cjs
  • BRAINSTORM_OWNER_PID required — data/skills/superpowers/brainstorming/scripts/server.cjs
  • BRAINSTORM_PORT required — data/skills/superpowers/brainstorming/scripts/server.cjs
  • BRAINSTORM_URL_HOST required — data/skills/superpowers/brainstorming/scripts/server.cjs
  • CODECONTEXT_CHILD required — codecontext/shim.go
  • CODECONTEXT_URL required — apps/server/src/services/codecontext_client.ts
  • CONDUCTOR_MODEL required — conductor/src/dispatch.ts
  • CONDUCTOR_OPENCODE_BIN required — conductor/src/dispatch.ts
  • CONDUCTOR_TIMEOUT_MS required — conductor/src/dispatch.ts
  • CONTAINER_GUIDANCE_FILE required — apps/server/src/services/tests/system-prompt.test.ts
  • CONTEXT7_API_KEY (has default) — .env
  • DATABASE_URL (has default) — .env.example
  • DEEPSEEK_API_KEY (has default) — .env
  • DEEPSEEK_BASE_URL (has default) — .env
  • DEFAULT_MODEL (has default) — .env.example
  • DEV_REMOTE_USER required — apps/web/vite.config.ts
  • EMBEDDING_MODEL_PATH required — apps/server/src/services/memory/embeddings.ts
  • GITEA_BASE_URL (has default) — .env
  • GITEA_SSH_HOST (has default) — .env
  • GITEA_TOKEN (has default) — .env
  • GITEA_USER (has default) — .env
  • LLAMA_SWAP_URL (has default) — .env.example
  • MCP_TEST_MISSING required — apps/server/src/services/tests/mcp-config.test.ts
  • MCP_TEST_SECRET required — apps/server/src/services/tests/mcp-config.test.ts
  • MEMORY_SEARCH required — apps/server/src/services/memory/recall.ts
  • NODE_ENV (has default) — .env.example
  • PORT (has default) — .env.example
  • POSTGRES_PASSWORD (has default) — .env.example
  • PROJECT_ROOT_WHITELIST (has default) — .env.example
  • SEARXNG_URL (has default) — .env.example
  • SKILLS_ROOT required — apps/server/src/services/skills.ts
  • WEB_DIST_PATH required — apps/server/src/index.ts

Config Files

  • .env.example
  • Dockerfile
  • apps/web/vite.config.ts
  • docker-compose.yml

Key Dependencies

  • better-sqlite3: ^11.10.0

Middleware

auth

  • auth — apps/booterm/src/auth.ts
  • authoring — apps/coder/src/conductor/flows/authoring.ts
  • turn-guard.test — apps/coder/src/services/backends/__tests__/turn-guard.test.ts
  • turn-guard — apps/coder/src/services/backends/turn-guard.ts
  • get_middleware — apps/server/src/services/tools/codecontext/get_middleware.ts
  • authoring — conductor/src/flows/authoring.ts
  • spec — openspec/changes/add-behavioral-engine/specs/audit-middleware/spec.md

custom

  • write_guard.test — apps/coder/src/services/__tests__/write_guard.test.ts
  • write_guard_fuzz.test — apps/coder/src/services/__tests__/write_guard_fuzz.test.ts
  • edit-guards-imports — apps/coder/src/services/edit-guards-imports.ts
  • write_guard — apps/coder/src/services/write_guard.ts
  • secret_guard.test — apps/server/src/services/__tests__/secret_guard.test.ts
  • path_guard — apps/server/src/services/path_guard.ts
  • secret_guard — apps/server/src/services/secret_guard.ts
  • url_guard — apps/server/src/services/url_guard.ts

validation

  • edit-guards — apps/coder/src/services/edit-guards.ts
  • path_guard.test — apps/server/src/services/__tests__/path_guard.test.ts

Dependency Graph

Most Imported Files (change these carefully)

  • apps/coder/src/db.ts — imported by 44 files
  • apps/server/src/types/api.ts — imported by 34 files
  • apps/server/src/db.ts — imported by 32 files
  • packages/ion/src/cli/utils.ts — imported by 24 files
  • apps/coder/src/services/tools/types.ts — imported by 18 files
  • apps/coder/src/conductor/types.ts — imported by 16 files
  • apps/server/src/services/tools.ts — imported by 15 files
  • apps/coder/src/services/agent-backend.ts — imported by 14 files
  • apps/coder/src/services/acp-tool-snapshot.ts — imported by 14 files
  • apps/server/src/config.ts — imported by 14 files
  • apps/server/src/services/tools/codecontext/factory.ts — imported by 14 files
  • apps/server/src/services/tools/types.ts — imported by 13 files
  • conductor/src/types.ts — imported by 13 files
  • apps/coder/src/services/provider-config-registry.ts — imported by 12 files
  • apps/coder/src/config.ts — imported by 11 files
  • apps/coder/src/services/provider-types.ts — imported by 11 files
  • apps/server/src/services/broker.ts — imported by 10 files
  • apps/server/src/services/agents.ts — imported by 10 files
  • apps/server/src/services/path_guard.ts — imported by 10 files
  • apps/coder/src/services/pending_changes.ts — imported by 9 files

Import Map (who imports what)

  • apps/coder/src/db.tsapps/coder/src/index.ts, apps/coder/src/routes/__tests__/agent-sessions.routes.test.ts, apps/coder/src/routes/__tests__/chat-resolve.test.ts, apps/coder/src/routes/__tests__/providers.routes.test.ts, apps/coder/src/routes/agent-sessions.ts +39 more
  • apps/server/src/types/api.tsapps/server/src/routes/chats.ts, apps/server/src/routes/messages.ts, apps/server/src/routes/models.ts, apps/server/src/routes/projects.ts, apps/server/src/routes/sessions.ts +29 more
  • apps/server/src/db.tsapps/server/src/index.ts, apps/server/src/routes/agents.ts, apps/server/src/routes/analytics.ts, apps/server/src/routes/artifacts.ts, apps/server/src/routes/chats.ts +27 more
  • packages/ion/src/cli/utils.tspackages/ion/src/cli/commands/abandon.ts, packages/ion/src/cli/commands/abandon.ts, packages/ion/src/cli/commands/approve.ts, packages/ion/src/cli/commands/approve.ts, packages/ion/src/cli/commands/cleanup.ts +19 more
  • apps/coder/src/services/tools/types.tsapps/coder/src/routes/messages.ts, apps/coder/src/services/dispatcher.ts, apps/coder/src/services/tools/adapter.ts, apps/coder/src/services/tools/apply_pending.ts, apps/coder/src/services/tools/check_task_status.ts +13 more
  • apps/coder/src/conductor/types.tsapps/coder/src/conductor/flows/_util.ts, apps/coder/src/conductor/flows/architectural-analysis.ts, apps/coder/src/conductor/flows/authoring.ts, apps/coder/src/conductor/flows/code-review.ts, apps/coder/src/conductor/flows/discovery.ts +11 more
  • apps/server/src/services/tools.tsapps/server/src/index.ts, apps/server/src/services/__tests__/agent-allowlist.test.ts, apps/server/src/services/agents.ts, apps/server/src/services/inference/stream-phase-adapter.ts, apps/server/src/services/inference/stream-phase.ts +10 more
  • apps/coder/src/services/agent-backend.tsapps/coder/src/routes/lifecycle.ts, apps/coder/src/services/__tests__/stream-json-parser.test.ts, apps/coder/src/services/acp-event-map.ts, apps/coder/src/services/agent-pool.ts, apps/coder/src/services/backends/__tests__/claude-sdk-map.test.ts +9 more
  • apps/coder/src/services/acp-tool-snapshot.tsapps/coder/src/services/__tests__/acp-event-map.test.ts, apps/coder/src/services/__tests__/frame-emitter.test.ts, apps/coder/src/services/__tests__/stream-json-parser.test.ts, apps/coder/src/services/acp-dispatch.ts, apps/coder/src/services/acp-event-map.ts +9 more
  • apps/server/src/config.tsapps/server/src/db.ts, apps/server/src/index.ts, apps/server/src/routes/chats.ts, apps/server/src/routes/messages.ts, apps/server/src/routes/models.ts +9 more

Generated by codesight — see your codebase clearly