AI Agent Builder and Runtime by Docker Engineering
This report presents the forensic synthetic code analysis of docker/docker-agent, a Go project with 3,240 GitHub stars. SynthScan v2.0 examined 525,168 lines of code across 2282 source files, recording 1429 pattern matches distributed across 12 syntactic categories. The overall adjusted score of 3.5 places this repository in the Likely human-written band.
The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).
Longitudinal tracking requires multiple scan runs. Once this repository is re-scanned after new commits land, this chart will visualise how the synthetic code signal evolves over time — enabling you to detect whether AI authorship is growing, stabilising, or being actively corrected by human engineers.
Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.
This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.
The scanner identified 1429 distinct pattern matches across 12 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | cmd/wasm/runtime_wasm.go | 1 | //go:build js && wasm | COMMENT |
| LOW | cmd/wasm/main.go | 1 | //go:build js && wasm | COMMENT |
| LOW | cmd/wasm/main.go | 21 | // - Open files or listen on sockets. | COMMENT |
| LOW | cmd/wasm/main.go | 41 | // | COMMENT |
| LOW | cmd/wasm/web/auth.js | 1 | // OpenRouter PKCE OAuth helpers for the docker-agent wasm browser demo. | COMMENT |
| LOW | cmd/wasm/web/auth.js | 21 | // scoped, revocable from https://openrouter.ai/settings/keys, and lives only | COMMENT |
| LOW | cmd/root/backend.go | 21 | // prompt files) and resolves the team. | COMMENT |
| LOW | cmd/root/run_listen.go | 21 | // in-process runtime even when the HTTP control plane is disabled. That lets a | COMMENT |
| LOW | cmd/root/run.go | 121 | // auto-injector and into the App via app.WithSnapshotController so | COMMENT |
| LOW | cmd/root/run.go | 541 | return runTUI(ctx, rt, sess, b.Spawner(rt), cleanup, f.tuiOpts(args), opts...) | COMMENT |
| LOW | cmd/root/run.go | 1181 | // WithToolsApproved before WithSafetyPolicy so a resolved safety | COMMENT |
| LOW | cmd/root/agent_picker.go | 581 | // agentPickerCardsTop is the number of rows from the panel's top edge to | COMMENT |
| LOW | cmd/root/plans.go | 381 | COMMENT | |
| LOW | cmd/root/setup.go | 41 | // declined or cancelled: the full failure was already printed just above the | COMMENT |
| LOW | cmd/root/setup.go | 61 | // ProviderName and Provider are set when the custom path registered an | COMMENT |
| LOW | cmd/root/sandbox.go | 201 | // package-registry / source-host the auto-installer reaches for. | COMMENT |
| LOW | cmd/root/sandbox.go | 321 | // default sandbox proxy denies all of them; without this, the inner | COMMENT |
| LOW | cmd/root/sandbox.go | 501 | } | COMMENT |
| LOW | cmd/root/sandbox.go | 541 | // always allowlisted in the sandbox proxy, since every run resolves | COMMENT |
| LOW | cmd/root/otel.go | 81 | COMMENT | |
| LOW | cmd/root/otel.go | 181 | return "http://" + endpoint | COMMENT |
| LOW | lint/hook_config_sync.go | 1 | package main | COMMENT |
| LOW | lint/hook_config_sync.go | 21 | // Drift in either direction is silently broken at runtime: | COMMENT |
| LOW | lint/config_version_constant.go | 1 | package main | COMMENT |
| LOW | lint/runtime_session_scoped.go | 1 | package main | COMMENT |
| LOW | lint/constructor_command_exec.go | 1 | package main | COMMENT |
| LOW | lint/slog_contextual.go | 1 | package main | COMMENT |
| LOW | lint/slog_contextual.go | 21 | // call's enclosing function: | COMMENT |
| LOW | lint/constructor_purity.go | 1 | package main | COMMENT |
| LOW | lint/constructor_purity.go | 21 | // accept a context the goroutine honours), so that starting background work | COMMENT |
| LOW | lint/tui_view_purity.go | 1 | package main | COMMENT |
| LOW | lint/tui_view_purity.go | 21 | // recv.field = nil | COMMENT |
| LOW | lint/runtime_event_registry.go | 21 | // … | COMMENT |
| LOW | lint/hook_builtins_registered.go | 1 | package main | COMMENT |
| LOW | lint/hook_builtins_registered.go | 21 | // | COMMENT |
| LOW | lint/config_latest_tag_consistency.go | 1 | package main | COMMENT |
| LOW | lint/config_latest_tag_consistency.go | 21 | // an intentional design choice. | COMMENT |
| LOW | lint/config_package_name.go | 1 | package main | COMMENT |
| LOW | docs/hugo.yaml | 1 | # Hugo configuration for https://docker.github.io/docker-agent/ | COMMENT |
| LOW | docs/js/app.js | 41 | document.documentElement.removeAttribute('data-theme'); | COMMENT |
| LOW | examples/github-copilot.yaml | 1 | # GitHub Copilot requires a `Copilot-Integration-Id` header on every request | COMMENT |
| LOW | examples/capability-overrides.yaml | 1 | # Demonstrates the `capabilities` override for models the models.dev catalogue | COMMENT |
| LOW | examples/remote_mcp_oauth_callback_redirect.yaml | 1 | # Example: Remote MCP server with a custom OAuth callback redirect URL. | COMMENT |
| LOW | examples/filesystem_allow_deny.yaml | 1 | # Demonstrates allow_list / deny_list for the filesystem tool. | COMMENT |
| LOW | examples/redact_secrets.yaml | 1 | # Demonstrates the redact_secrets feature. | COMMENT |
| LOW | examples/redact_secrets.yaml | 21 | # persisted session file, the post_tool_use hook input, or the | COMMENT |
| LOW | examples/code.yaml | 21 | # 3. **Code Modification**: | COMMENT |
| LOW | examples/compaction_threshold.yaml | 1 | # Compaction Threshold Example | COMMENT |
| LOW | examples/custom-pricing.yaml | 1 | # Demonstrates the `cost` override that declares a model's token pricing | COMMENT |
| LOW | examples/readonly.yaml | 1 | # Demonstrates the `readonly` attribute on toolsets and agents. | COMMENT |
| LOW | examples/flavors.yaml | 1 | #!/usr/bin/env docker agent run | COMMENT |
| LOW | examples/cached_responses.yaml | 1 | # Demonstrates the response cache. | COMMENT |
| LOW | examples/websocket_transport.yaml | 1 | # Example: WebSocket Transport for OpenAI Responses API | COMMENT |
| LOW | examples/handoff.yaml | 1 | # Handoff Graph Diagram: | COMMENT |
| LOW | examples/worktree_create_hook.yaml | 1 | # | COMMENT |
| LOW | examples/worktree_create_hook.yaml | 21 | # files git won't carry over (.env, local config), install dependencies, | COMMENT |
| LOW | examples/bypass_models_gateway.yaml | 1 | # Demonstrates `bypass_models_gateway`, which forces a specific model to | COMMENT |
| LOW | examples/force_handoff.yaml | 1 | #!/usr/bin/env cagent run | COMMENT |
| LOW | examples/mcp_catalog.yaml | 1 | # An agent that can discover, enable and use any remote streamable-http | COMMENT |
| LOW | examples/miro-expert.yaml | 1 | # Example: Miro's hosted MCP server (https://miro.com/ai/mcp/) with skills. | COMMENT |
| 1112 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | CHANGELOG.md | 958 | - [#3451](https://github.com/docker/docker-agent/pull/3451) - feat: add docker agent board, a Kanban TUI for orchestrati | CODE |
| MEDIUM | CHANGELOG.md | 1209 | - [#3393](https://github.com/docker/docker-agent/pull/3393) - fix: clamp max_tokens to the context window for OpenAI-com | CODE |
| MEDIUM | CHANGELOG.md | 1291 | - [#3326](https://github.com/docker/docker-agent/pull/3326) - refactor: replace test-mutated globals with dependency inj | CODE |
| MEDIUM | CHANGELOG.md | 1499 | - [#3227](https://github.com/docker/docker-agent/pull/3227) - feat: add plan builtin toolset for shared multi-agent coll | CODE |
| MEDIUM | CHANGELOG.md | 1591 | - [#3227](https://github.com/docker/docker-agent/pull/3227) - feat: add plan builtin toolset for shared multi-agent coll | CODE |
| MEDIUM | CHANGELOG.md | 2335 | - [#2876](https://github.com/docker/docker-agent/pull/2876) - docs: document mcp_catalog toolset and reorganize RAG refe | CODE |
| MEDIUM | CHANGELOG.md | 2673 | - [#2723](https://github.com/docker/docker-agent/pull/2723) - remote-runtime: close silent gaps, consolidate Runtime, sc | CODE |
| MEDIUM | CHANGELOG.md | 2673 | - [#2723](https://github.com/docker/docker-agent/pull/2723) - remote-runtime: close silent gaps, consolidate Runtime, sc | CODE |
| MEDIUM | CHANGELOG.md | 2872 | - [#2672](https://github.com/docker/docker-agent/pull/2672) - add js/wasm browser build with OpenRouter PKCE, agentic lo | CODE |
| MEDIUM | CHANGELOG.md | 2872 | - [#2672](https://github.com/docker/docker-agent/pull/2672) - add js/wasm browser build with OpenRouter PKCE, agentic lo | CODE |
| MEDIUM | CHANGELOG.md | 2996 | - [#2523](https://github.com/docker/docker-agent/pull/2523) - refactor(runtime): consolidate hook orchestration and cach | CODE |
| MEDIUM | CHANGELOG.md | 3008 | - [#2535](https://github.com/docker/docker-agent/pull/2535) - refactor(runtime): extract sub-session orchestration | CODE |
| MEDIUM⚡ | CHANGELOG.md | 3463 | - [#2322](https://github.com/docker/docker-agent/pull/2322) - fix: resolve duplicate RAG tool names and nil pointer pani | CODE |
| MEDIUM⚡ | CHANGELOG.md | 3465 | - [#2324](https://github.com/docker/docker-agent/pull/2324) - fix: pass Models map to RAG ManagersBuildConfig for model | CODE |
| MEDIUM⚡ | CHANGELOG.md | 3473 | - [#2344](https://github.com/docker/docker-agent/pull/2344) - feat: support custom providers in RAG embedding and rerank | CODE |
| MEDIUM | CHANGELOG.md | 3666 | - [#2210](https://github.com/docker/docker-agent/pull/2210) - Refactor RAG from agent-level config to standard toolset t | CODE |
| MEDIUM | CHANGELOG.md | 3712 | - [#2205](https://github.com/docker/docker-agent/pull/2205) - Simplify the runtime related RAG code a bit | CODE |
| MEDIUM | CHANGELOG.md | 4265 | - [#1973](https://github.com/docker/docker-agent/pull/1973) - Fix context window overflow: auto-recovery and proactive c | CODE |
| MEDIUM | CHANGELOG.md | 4353 | - [#1899](https://github.com/docker/docker-agent/pull/1899) - fix: Esc key not interrupting sub-agents in multi-agent se | CODE |
| MEDIUM | cmd/wasm/runtime_wasm.go | 5 | // runtime_wasm.go implements a lightweight agentic loop for the browser-based | COMMENT |
| MEDIUM | cmd/wasm/runtime_wasm.go | 248 | // runAgentLoop runs the full agentic loop: stream completions, process tool | COMMENT |
| MEDIUM | cmd/wasm/main.go | 3 | // Package main is a js/wasm entry point that exposes docker-agent's agentic | COMMENT |
| MEDIUM | cmd/wasm/main.go | 8 | // - A full agentic loop: streaming chat with tool calling, multi-agent | COMMENT |
| MEDIUM | cmd/wasm/main.go | 223 | // runChat loads the config, builds the runtime, and runs the agentic loop. | COMMENT |
| MEDIUM | cmd/wasm/main.go | 244 | // Run the agentic loop. | COMMENT |
| MEDIUM | docs/configuration/agents/index.md | 25 | toolsets: [list] # Optional: tool configurations (use `type: rag` for RAG sources) | CODE |
| MEDIUM | docs/configuration/agents/index.md | 35 | code_mode_tools: boolean # Optional: let the agent write JavaScript to orchestrate tool calls (see Code Mode) | CODE |
| MEDIUM | docs/configuration/hooks/index.md | 686 | ### Agent-Switch and Session-Resume: observability for multi-agent and long runs | COMMENT |
| MEDIUM | docs/configuration/overview/index.md | 46 | # 5. RAG — define retrieval-augmented generation sources (optional) | COMMENT |
| MEDIUM | docs/tools/rag/index.md | 175 | ## Debugging RAG | COMMENT |
| MEDIUM | docs/tools/rag/index.md | 197 | ### Top-Level RAG Fields | COMMENT |
| MEDIUM | docs/providers/dmr/index.md | 90 | context_size: 32768 # total context window (sent via _configure) | CODE |
| MEDIUM | docs/features/acp/index.md | 31 | # With a multi-agent team config | COMMENT |
| MEDIUM | docs/features/chat-server/index.md | 28 | # Pick a specific agent from a multi-agent config | COMMENT |
| MEDIUM | docs/guides/compaction/index.md | 11 | ## Why long sessions fill the context window | COMMENT |
| MEDIUM | docs/guides/go-sdk/index.md | 175 | ## RAG Toolset (opt-out) | COMMENT |
| MEDIUM | docs/concepts/distribution/index.md | 51 | # Run with a specific agent from a multi-agent config | COMMENT |
| MEDIUM | docs/concepts/distribution/index.md | 74 | See [Pin external sub-agents to a digest](../multi-agent/index.md#pin-external-sub-agents-to-a-digest) and [External Sub | CODE |
| MEDIUM | examples/session_context.yaml | 10 | # messages, so a big history cannot overflow the context window. | COMMENT |
| MEDIUM | examples/compaction_threshold.yaml | 7 | # token usage crosses 90% of the model's context window. Lowering the | COMMENT |
| MEDIUM | examples/websocket_transport.yaml | 8 | # for agentic workflows with many tool calls. | COMMENT |
| MEDIUM | examples/README.md | 105 | ### RAG (Retrieval-Augmented Generation) | COMMENT |
| MEDIUM⚡ | examples/hooks.yaml | 319 | # / cost guardrails / auditing without contributing system messages | COMMENT |
| MEDIUM | examples/hooks.yaml | 26 | # before_llm_call - just before each model call (observability, guardrails) | COMMENT |
| MEDIUM | examples/compaction_model.yaml | 21 | # Note: if the compaction model has a SMALLER context window than the primary, | COMMENT |
| MEDIUM | examples/compaction_model.yaml | 24 | # with a compaction model whose context window is at least as large to keep the | COMMENT |
| MEDIUM | examples/task_budget.yaml | 2 | # multi-step agentic task (thinking + tool calls + final output). docker-agent | COMMENT |
| MEDIUM | examples/chat/main.go | 20 | // # or, to pin a specific agent in a multi-agent team: | COMMENT |
| MEDIUM | examples/rag/semantic_embeddings.yaml | 1 | # This example demonstrates the semantic-embeddings RAG strategy. | COMMENT |
| MEDIUM | examples/rag/semantic_embeddings.yaml | 33 | # Required: embedding model for vector similarity | COMMENT |
| MEDIUM | examples/rag/custom_provider.yaml | 1 | # This example demonstrates using a custom provider for RAG embedding models. | COMMENT |
| MEDIUM | examples/rag/reranking.yaml | 11 | # If reranking fails (e.g., model not available), the RAG system will gracefully | COMMENT |
| MEDIUM | examples/rag/hybrid.yaml | 2 | # 1. Running multiple retrieval strategies in a single RAG source | COMMENT |
| MEDIUM | pkg/config/v8/types.go | 255 | // TaskBudget caps the total tokens a model can spend across an agentic task. | COMMENT |
| MEDIUM | pkg/config/v8/types.go | 622 | // TaskBudget caps the total tokens a model can spend across an agentic task. | COMMENT |
| MEDIUM | pkg/config/v8/types.go | 1130 | // TaskBudget caps the total tokens a model can spend across an agentic task | COMMENT |
| MEDIUM | pkg/config/v8/types.go | 1763 | // turn_start). Use this for observability, cost guardrails, or | COMMENT |
| MEDIUM | pkg/config/v9/types.go | 289 | // TaskBudget caps the total tokens a model can spend across an agentic task. | COMMENT |
| MEDIUM | pkg/config/v9/types.go | 787 | // TaskBudget caps the total tokens a model can spend across an agentic task. | COMMENT |
| MEDIUM | pkg/config/v9/types.go | 1325 | // TaskBudget caps the total tokens a model can spend across an agentic task | COMMENT |
| 31 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | examples/handoff.yaml | 3 | # ─────> Root Agent <────────<─<─<──────┐ | COMMENT |
| MEDIUM⚡ | examples/handoff.yaml | 5 | # ┌───────┼────────┐ | | COMMENT |
| MEDIUM⚡ | examples/handoff.yaml | 10 | # | ┌───────┴───────┐ | | COMMENT |
| MEDIUM⚡ | examples/handoff.yaml | 16 | # | └───────┬───────┘ | | COMMENT |
| MEDIUM⚡ | examples/handoff.yaml | 20 | # └────────┼───────┘ | | COMMENT |
| MEDIUM⚡ | examples/handoff.yaml | 22 | # Summarizer ──────>─>─>─────────┘ | COMMENT |
| MEDIUM | examples/worktree_create_hook.yaml | 3 | # ========================================================================== | COMMENT |
| MEDIUM | examples/anthropic_wif.yaml | 22 | # --------------------------------------------------------------------- | COMMENT |
| MEDIUM | examples/anthropic_wif.yaml | 28 | # --------------------------------------------------------------------- | COMMENT |
| MEDIUM | examples/anthropic_wif.yaml | 41 | # --------------------------------------------------------------------- | COMMENT |
| MEDIUM | examples/anthropic_wif.yaml | 46 | # --------------------------------------------------------------------- | COMMENT |
| MEDIUM | examples/anthropic_wif.yaml | 57 | # --------------------------------------------------------------------- | COMMENT |
| MEDIUM | examples/anthropic_wif.yaml | 62 | # --------------------------------------------------------------------- | COMMENT |
| MEDIUM | examples/anthropic_wif.yaml | 77 | # --------------------------------------------------------------------- | COMMENT |
| MEDIUM | examples/anthropic_wif.yaml | 88 | # --------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | examples/hooks.yaml | 247 | # ==================================================================== | COMMENT |
| MEDIUM⚡ | examples/hooks.yaml | 257 | # ==================================================================== | COMMENT |
| MEDIUM⚡ | examples/hooks.yaml | 267 | # ==================================================================== | COMMENT |
| MEDIUM⚡ | examples/hooks.yaml | 272 | # ==================================================================== | COMMENT |
| MEDIUM⚡ | examples/hooks.yaml | 316 | # ==================================================================== | COMMENT |
| MEDIUM⚡ | examples/hooks.yaml | 321 | # ==================================================================== | COMMENT |
| MEDIUM⚡ | examples/hooks.yaml | 330 | # ==================================================================== | COMMENT |
| MEDIUM⚡ | examples/hooks.yaml | 359 | # ==================================================================== | COMMENT |
| MEDIUM⚡ | examples/hooks.yaml | 361 | # ==================================================================== | COMMENT |
| MEDIUM⚡ | examples/hooks.yaml | 371 | # ==================================================================== | COMMENT |
| MEDIUM⚡ | examples/hooks.yaml | 378 | # ==================================================================== | COMMENT |
| MEDIUM⚡ | examples/hooks.yaml | 406 | # ==================================================================== | COMMENT |
| MEDIUM⚡ | examples/hooks.yaml | 409 | # ==================================================================== | COMMENT |
| MEDIUM⚡ | examples/hooks.yaml | 416 | # ==================================================================== | COMMENT |
| MEDIUM⚡ | examples/hooks.yaml | 419 | # ==================================================================== | COMMENT |
| MEDIUM⚡ | examples/hooks.yaml | 429 | # ==================================================================== | COMMENT |
| MEDIUM⚡ | examples/hooks.yaml | 433 | # ==================================================================== | COMMENT |
| MEDIUM⚡ | examples/hooks.yaml | 443 | # ==================================================================== | COMMENT |
| MEDIUM⚡ | examples/hooks.yaml | 449 | # ==================================================================== | COMMENT |
| MEDIUM⚡ | examples/hooks.yaml | 458 | # ==================================================================== | COMMENT |
| MEDIUM⚡ | examples/hooks.yaml | 463 | # ==================================================================== | COMMENT |
| MEDIUM⚡ | examples/hooks.yaml | 472 | # ==================================================================== | COMMENT |
| MEDIUM | examples/hooks.yaml | 3 | # ========================================================================== | COMMENT |
| MEDIUM | examples/hooks.yaml | 103 | # ==================================================================== | COMMENT |
| MEDIUM | examples/hooks.yaml | 107 | # ==================================================================== | COMMENT |
| MEDIUM | examples/hooks.yaml | 140 | # ==================================================================== | COMMENT |
| MEDIUM | examples/hooks.yaml | 144 | # ==================================================================== | COMMENT |
| MEDIUM | examples/hooks.yaml | 162 | # ==================================================================== | COMMENT |
| MEDIUM | examples/hooks.yaml | 168 | # ==================================================================== | COMMENT |
| MEDIUM | examples/hooks.yaml | 182 | # ==================================================================== | COMMENT |
| MEDIUM | examples/hooks.yaml | 186 | # ==================================================================== | COMMENT |
| MEDIUM | examples/hooks.yaml | 202 | # ==================================================================== | COMMENT |
| MEDIUM | examples/hooks.yaml | 208 | # ==================================================================== | COMMENT |
| MEDIUM | examples/hooks.yaml | 222 | # ==================================================================== | COMMENT |
| MEDIUM | examples/hooks.yaml | 232 | # ==================================================================== | COMMENT |
| MEDIUM | examples/hooks.yaml | 287 | # ==================================================================== | COMMENT |
| MEDIUM | examples/hooks.yaml | 305 | # ==================================================================== | COMMENT |
| MEDIUM | examples/hooks.yaml | 343 | # ==================================================================== | COMMENT |
| MEDIUM | examples/hooks.yaml | 389 | # ==================================================================== | COMMENT |
| MEDIUM | examples/hooks.yaml | 394 | # ==================================================================== | COMMENT |
| MEDIUM | examples/hooks.yaml | 493 | # ==================================================================== | COMMENT |
| MEDIUM | examples/hooks.yaml | 508 | # ==================================================================== | COMMENT |
| MEDIUM | examples/hooks.yaml | 515 | # ==================================================================== | COMMENT |
| MEDIUM | examples/hooks.yaml | 528 | # ==================================================================== | COMMENT |
| MEDIUM | examples/budget.yaml | 4 | # ========================================================================== | COMMENT |
| 20 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | docs/providers/opencode-go/index.md | 24 | export OPENCODE_API_KEY=your-api-key | CODE |
| HIGH | docs/providers/moonshot/index.md | 24 | export MOONSHOT_API_KEY=your-api-key | CODE |
| HIGH | docs/providers/baseten/index.md | 21 | export BASETEN_API_KEY=your-api-key | CODE |
| HIGH | docs/providers/together/index.md | 24 | export TOGETHER_API_KEY=your-api-key | CODE |
| HIGH | docs/providers/vercel/index.md | 25 | export AI_GATEWAY_API_KEY=your-api-key | CODE |
| HIGH | docs/providers/openrouter/index.md | 21 | export OPENROUTER_API_KEY=your-api-key | CODE |
| HIGH | docs/providers/fireworks/index.md | 24 | export FIREWORKS_API_KEY=your-api-key | CODE |
| HIGH | docs/providers/groq/index.md | 23 | export GROQ_API_KEY=your-api-key | CODE |
| HIGH | docs/providers/minimax/index.md | 21 | export MINIMAX_API_KEY=your-api-key | CODE |
| HIGH | docs/providers/deepseek/index.md | 24 | export DEEPSEEK_API_KEY=your-api-key | CODE |
| HIGH | docs/providers/xai/index.md | 21 | export XAI_API_KEY=your-api-key | CODE |
| HIGH | docs/providers/nvidia/index.md | 25 | export NVIDIA_API_KEY=your-api-key | CODE |
| HIGH | docs/providers/nebius/index.md | 21 | export NEBIUS_API_KEY=your-api-key | CODE |
| HIGH | docs/providers/opencode-zen/index.md | 23 | export OPENCODE_API_KEY=your-api-key | CODE |
| HIGH | docs/providers/cerebras/index.md | 25 | export CEREBRAS_API_KEY=your-api-key | CODE |
| HIGH | docs/providers/mistral/index.md | 21 | export MISTRAL_API_KEY=your-api-key | CODE |
| HIGH | docs/community/opentelemetry/index.md | 74 | export OTEL_EXPORTER_OTLP_HEADERS="x-api-key=<your-api-key>,Langsmith-Project=<project>" | CODE |
| HIGH | examples/opencode-zen.yaml | 6 | # export OPENCODE_API_KEY="your-api-key" | COMMENT |
| HIGH | examples/opencode-go-practical.yaml | 6 | # export OPENCODE_API_KEY="your-api-key" | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | cmd/root/alias.go | 27 | Example: ` # Create an alias for a registry agent | CODE |
| MEDIUM | cmd/root/alias.go | 30 | # Create an alias for a local agent file | COMMENT |
| MEDIUM⚡ | cmd/root/alias.go | 75 | Example: ` # Create a simple alias | CODE |
| MEDIUM⚡ | cmd/root/alias.go | 78 | # Create an alias that always runs in yolo mode | COMMENT |
| MEDIUM⚡ | cmd/root/alias.go | 81 | # Create an alias that defaults to the balanced safety mode | COMMENT |
| MEDIUM⚡ | cmd/root/alias.go | 84 | # Create an alias with a specific model | COMMENT |
| MEDIUM⚡ | cmd/root/alias.go | 87 | # Create an alias with hidden tool results | COMMENT |
| MEDIUM⚡ | cmd/root/alias.go | 90 | # Create an alias that always runs in a sandbox | COMMENT |
| MEDIUM⚡ | cmd/root/alias.go | 93 | # Create an alias with multiple options | COMMENT |
| MEDIUM | examples/dhi/dhi_mcp_server/server.py | 6 | # Define the get_migration_info tool | COMMENT |
| MEDIUM | examples/elicitation/server.py | 18 | # Create the MCP server | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | examples/code.yaml | 23 | # - Ensure changes follow best practices | COMMENT |
| LOW | examples/toolset_instructions.yaml | 11 | # If you want to keep the original guidance and just add your own rules | COMMENT |
| MEDIUM | examples/multi-code.yaml | 81 | # - Ensure changes follow best practices | COMMENT |
| MEDIUM | examples/multi-code.yaml | 138 | # - Ensure changes follow best practices | COMMENT |
| MEDIUM | e2e/testdata/cassettes/TestExec_DefaultAgent.yaml | 11 | body: "{\"messages\":[{\"content\":[{\"text\":\"Which model are you running? Be super brief.\",\"type\":\"text\"}],\ | CODE |
| MEDIUM | e2e/testdata/cassettes/TestExec_DefaultAgent.yaml | 31 | body: "{\"max_tokens\":64000,\"messages\":[{\"content\":[{\"text\":\"Which model are you running? Be super brief.\", | CODE |
| MEDIUM | pkg/config/resolve.go | 126 | // query as volatile — rather than an enumerated denylist — keeps this robust as | COMMENT |
| MEDIUM | pkg/tui/components/markdown/incremental.go | 296 | // the function robust against future refactors of the helpers. | COMMENT |
| MEDIUM | pkg/js/expand.go | 129 | // then expand only the text fields. This keeps the expansion robust if | COMMENT |
| MEDIUM | pkg/selfupdate/exec_unix.go | 32 | // descriptors and terminal, so the user sees a seamless restart. | COMMENT |
| MEDIUM | pkg/runtime/turn_end_test.go | 164 | // is what makes this contract robust: explicit dispatch calls would | COMMENT |
| MEDIUM | pkg/hooks/builtins/add_directory_listing_test.go | 19 | // format — the test is robust to header tweaks. | COMMENT |
| MEDIUM | pkg/modelinfo/resolve_caps_test.go | 97 | // by a unique model id to stay robust regardless. | COMMENT |
| MEDIUM | pkg/skills/frontmatter.go | 8 | // first ": ". This is more robust for the simple frontmatter format used by | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | pkg/tools/builtin/filesystem/filesystem_test.go | 1434 | // Step 1: validate the path while the file is legitimate. This is | COMMENT |
| LOW⚡ | pkg/tools/builtin/filesystem/filesystem_test.go | 1439 | // Step 2: attacker (or hostile post-edit hook running between T0 and | COMMENT |
| LOW⚡ | pkg/tools/builtin/filesystem/filesystem_test.go | 1444 | // Step 3: at T1 the tool issues the actual write. The rooted writer | COMMENT |
| LOW⚡ | pkg/tools/builtin/filesystem/filesystem_test.go | 1450 | // Step 4: the secret must be untouched on disk. | COMMENT |
| LOW⚡ | pkg/tui/components/messages/messages_test.go | 1214 | // Step 1: Add a reasoning block and a tool call inside it (simulates PartialToolCallEvent) | COMMENT |
| LOW⚡ | pkg/tui/components/messages/messages_test.go | 1224 | // Step 2: Append an assistant message so the reasoning block is no longer the last message | COMMENT |
| LOW⚡ | pkg/tui/components/messages/messages_test.go | 1229 | // Step 3: Update the tool call to Running (simulates ToolCallEvent) | COMMENT |
| LOW | pkg/tui/components/messages/messages.go | 1543 | // Step 1: Handle reasoning content - only create/extend a reasoning block if there's actual reasoning | COMMENT |
| LOW⚡ | pkg/tui/components/messages/messages.go | 1555 | // Step 2: Handle assistant content - this breaks the reasoning block chain | COMMENT |
| LOW⚡ | pkg/tui/components/messages/messages.go | 1561 | // Step 3: Handle tool calls | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | pkg/tools/builtin/filesystem/filesystem_test.go | 1434 | // Step 1: validate the path while the file is legitimate. This is | COMMENT |
| LOW⚡ | pkg/tools/builtin/filesystem/filesystem_test.go | 1439 | // Step 2: attacker (or hostile post-edit hook running between T0 and | COMMENT |
| LOW⚡ | pkg/tools/builtin/filesystem/filesystem_test.go | 1444 | // Step 3: at T1 the tool issues the actual write. The rooted writer | COMMENT |
| LOW⚡ | pkg/tools/builtin/filesystem/filesystem_test.go | 1450 | // Step 4: the secret must be untouched on disk. | COMMENT |
| LOW⚡ | pkg/tui/components/messages/messages_test.go | 1214 | // Step 1: Add a reasoning block and a tool call inside it (simulates PartialToolCallEvent) | COMMENT |
| LOW⚡ | pkg/tui/components/messages/messages_test.go | 1224 | // Step 2: Append an assistant message so the reasoning block is no longer the last message | COMMENT |
| LOW⚡ | pkg/tui/components/messages/messages_test.go | 1229 | // Step 3: Update the tool call to Running (simulates ToolCallEvent) | COMMENT |
| LOW | pkg/tui/components/messages/messages.go | 1543 | // Step 1: Handle reasoning content - only create/extend a reasoning block if there's actual reasoning | COMMENT |
| LOW⚡ | pkg/tui/components/messages/messages.go | 1555 | // Step 2: Handle assistant content - this breaks the reasoning block chain | COMMENT |
| LOW⚡ | pkg/tui/components/messages/messages.go | 1561 | // Step 3: Handle tool calls | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | cmd/root/setup_test.go | 191 | return &chatgpt.LoginResult{Email: "user@example.com", Plan: "plus"}, nil | CODE |
| LOW | pkg/creator/agent_test.go | 116 | "OPENAI_API_KEY=dummy-key-for-testing", | CODE |
| LOW | pkg/tools/builtin/api/api_test.go | 99 | Arguments: `{"name":"John Doe","age":30}`, | CODE |
| LOW | pkg/tools/builtin/api/api_test.go | 111 | assert.Equal(t, "John Doe", receivedData["name"]) | CODE |
| LOW | pkg/tui/dialog/elicitation_test.go | 215 | "default": "user@example.com", | CODE |
| LOW | pkg/tui/dialog/elicitation_test.go | 224 | Default: "user@example.com", | CODE |
| LOW | pkg/runtime/commands_test.go | 429 | input: `name="John Doe" age=30`, | CODE |
| LOW | pkg/runtime/commands_test.go | 430 | expected: map[string]any{"name": "John Doe", "age": int64(30)}, | CODE |
| LOW | pkg/chatgpt/login_test.go | 88 | idClaims["email"] = "user@example.com" | CODE |
| LOW | pkg/chatgpt/login_test.go | 105 | assert.Equal(t, "user@example.com", result.Email) | CODE |
| LOW | pkg/chatgpt/login_test.go | 119 | assert.Equal(t, "user@example.com", creds.Email) | CODE |
| LOW | pkg/chatgpt/chatgpt_test.go | 54 | claims["email"] = "user@example.com" | CODE |
| LOW | pkg/chatgpt/chatgpt_test.go | 62 | assert.Equal(t, "user@example.com", parsed.Email) | CODE |
| LOW | pkg/chatgpt/chatgpt_test.go | 86 | Email: "user@example.com", | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | pkg/tui/components/sidebar/sidebar.go | 326 | titleRegenerating bool // true when title is being regenerated by AI | CODE |
| HIGH | pkg/rag/rerank/rerank_test.go | 54 | // Return as many scores as requested documents, falling back to zeros if needed. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | examples/openapi-petstore.yaml | 8 | # Usage: | COMMENT |
| LOW | examples/env_placeholders.yaml | 12 | # Usage: | COMMENT |
| LOW | examples/model_env_substitution.yaml | 9 | # Usage: | COMMENT |
| LOW | scripts/docs-a11y-urls.sh | 33 | # Usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | examples/budget.yaml | 19 | # you can try it with an OpenRouter key instead of a first-party provider: | COMMENT |
| MEDIUM | examples/rag/custom_provider.yaml | 2 | # For instance, you can use a local Ollama instance or any OpenAI-compatible | COMMENT |