Repository Analysis

chenhg5/cc-connect

Bridge local AI coding agents (Claude Code, Cursor, Gemini CLI, Codex) to messaging platforms (Feishu/Lark, DingTalk, Slack, Telegram, Discord, LINE, WeChat Work). Chat with your AI dev assistant from anywhere — no public IP required for most platforms.

6.4 Low AI signal View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of chenhg5/cc-connect, a Go project with 15,238 GitHub stars. SynthScan v2.0 examined 252,986 lines of code across 600 source files, recording 822 pattern matches distributed across 8 syntactic categories. The overall adjusted score of 6.4 places this repository in the Low AI signal band.

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

6.4
Adjusted Score
6.4
Raw Score
100%
Time Factor
2026-08-28
Last Push
15.2K
Stars
Go
Language
253.0K
Lines of Code
600
Files
822
Pattern Hits
2026-08-29
Scan Date
0.00
HC Hit Rate

What These Metrics Mean

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

Score History

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

Severity Breakdown

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

CRITICAL 0HIGH 0MEDIUM 429LOW 393

Directory Score Breakdown

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

Pattern Findings

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

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

Decorative Section Separators424 hits · 1214 pts
SeverityFileLineSnippetContext
MEDIUMconfig.example.toml265# =============================================================================COMMENT
MEDIUMconfig.example.toml267# =============================================================================COMMENT
MEDIUMconfig.example.toml276# =============================================================================COMMENT
MEDIUMconfig.example.toml281# =============================================================================COMMENT
MEDIUMconfig.example.toml330# =============================================================================COMMENT
MEDIUMconfig.example.toml332# =============================================================================COMMENT
MEDIUMconfig.example.toml342# =============================================================================COMMENT
MEDIUMconfig.example.toml344# =============================================================================COMMENT
MEDIUMconfig.example.toml546# =============================================================================COMMENT
MEDIUMconfig.example.toml548# =============================================================================COMMENT
MEDIUMconfig.example.toml557# =============================================================================COMMENT
MEDIUMconfig.example.toml559# =============================================================================COMMENT
MEDIUMconfig.example.toml642# =============================================================================COMMENT
MEDIUMconfig.example.toml644# =============================================================================COMMENT
MEDIUMconfig.example.toml652# =============================================================================COMMENT
MEDIUMconfig.example.toml654# =============================================================================COMMENT
MEDIUMconfig.example.toml16# =============================================================================COMMENT
MEDIUMconfig.example.toml18# =============================================================================COMMENT
MEDIUMconfig.example.toml64# =============================================================================COMMENT
MEDIUMconfig.example.toml66# =============================================================================COMMENT
MEDIUMconfig.example.toml102# =============================================================================COMMENT
MEDIUMconfig.example.toml104# =============================================================================COMMENT
MEDIUMconfig.example.toml192# =============================================================================COMMENT
MEDIUMconfig.example.toml195# =============================================================================COMMENT
MEDIUMconfig.example.toml233# =============================================================================COMMENT
MEDIUMconfig.example.toml235# =============================================================================COMMENT
MEDIUMconfig.example.toml248# =============================================================================COMMENT
MEDIUMconfig.example.toml250# =============================================================================COMMENT
MEDIUMconfig.example.toml300# =============================================================================COMMENT
MEDIUMconfig.example.toml302# =============================================================================COMMENT
MEDIUMconfig.example.toml315# =============================================================================COMMENT
MEDIUMconfig.example.toml317# =============================================================================COMMENT
MEDIUMconfig.example.toml377# =============================================================================COMMENT
MEDIUMconfig.example.toml380# =============================================================================COMMENT
MEDIUMconfig.example.toml392# =============================================================================COMMENT
MEDIUMconfig.example.toml395# =============================================================================COMMENT
MEDIUMconfig.example.toml407# =============================================================================COMMENT
MEDIUMconfig.example.toml409# =============================================================================COMMENT
MEDIUMconfig.example.toml446# =============================================================================COMMENT
MEDIUMconfig.example.toml448# =============================================================================COMMENT
MEDIUMconfig.example.toml471# =============================================================================COMMENT
MEDIUMconfig.example.toml473# =============================================================================COMMENT
MEDIUMconfig.example.toml686# =============================================================================COMMENT
MEDIUMconfig.example.toml688# =============================================================================COMMENT
MEDIUMconfig.example.toml713# =============================================================================COMMENT
MEDIUMconfig.example.toml715# =============================================================================COMMENT
MEDIUMconfig.example.toml1500# -----------------------------------------------------------------------------COMMENT
MEDIUMconfig.example.toml1504# -----------------------------------------------------------------------------COMMENT
MEDIUMconfig.example.toml1516# =============================================================================COMMENT
MEDIUMconfig.example.toml1518# =============================================================================COMMENT
MEDIUMconfig.example.toml1554# =============================================================================COMMENT
MEDIUMconfig.example.toml1556# =============================================================================COMMENT
MEDIUMconfig.example.toml1605# =============================================================================COMMENT
MEDIUMconfig.example.toml1607# =============================================================================COMMENT
MEDIUMconfig.example.toml1677# =============================================================================COMMENT
MEDIUMconfig.example.toml1679# =============================================================================COMMENT
MEDIUMconfig.example.toml1754# =============================================================================COMMENT
MEDIUMconfig.example.toml1756# =============================================================================COMMENT
MEDIUMconfig.example.toml1795# =============================================================================COMMENT
MEDIUMconfig.example.toml1797# =============================================================================COMMENT
364 more matches not shown…
Over-Commented Block257 hits · 191 pts
SeverityFileLineSnippetContext
LOWconfig.example.toml1# cc-connect configurationCOMMENT
LOWconfig.example.toml21# - "en": EnglishCOMMENT
LOWconfig.example.toml41COMMENT
LOWconfig.example.toml61[log]COMMENT
LOWconfig.example.toml81# [[providers]]COMMENT
LOWconfig.example.toml101COMMENT
LOWconfig.example.toml121# tool_max_len = 500 # Max chars for tool use messages (default: 500) / 工具调用消息最大字符数(默认 500)COMMENT
LOWconfig.example.toml141# [projects.display]COMMENT
LOWconfig.example.toml161# Unlike idle_timeout_mins, this does not detect stuck agent execution. ItCOMMENT
LOWconfig.example.toml181# reaps an entire workspace. Set to 0 or leave unset to disable.COMMENT
LOWconfig.example.toml201#COMMENT
LOWconfig.example.toml221# target can escalate, work_dir inaccessible) or if the isolation probeCOMMENT
LOWconfig.example.toml241COMMENT
LOWconfig.example.toml261# enabled = false # Enable/disable instant reply (default: false) / 启用/禁用即时确认回复(默认 false)COMMENT
LOWconfig.example.toml281# =============================================================================COMMENT
LOWconfig.example.toml301# Relay Settings / Relay 设置COMMENT
LOWconfig.example.toml321# [projects.auto_compress]COMMENT
LOWconfig.example.toml341COMMENT
LOWconfig.example.toml361# -d '{"session_key":"telegram:123:123","prompt":"review latest commit","event":"git:commit"}'COMMENT
LOWconfig.example.toml381# Allow external adapters written in any language to connect at runtime.COMMENT
LOWconfig.example.toml401# [management]COMMENT
LOWconfig.example.toml421# * — match all events / 匹配所有事件COMMENT
LOWconfig.example.toml441# [[hooks]]COMMENT
LOWconfig.example.toml461# api_key = "sk-xxx" # OpenAI API keyCOMMENT
LOWconfig.example.toml481# 无论用户发文字还是语音,AI 始终额外发一条语音回复COMMENT
LOWconfig.example.toml501# # OpenAI TTS 限制请参考:https://platform.openai.com/docs/guides/text-to-speechCOMMENT
LOWconfig.example.toml521# base_url = "" # optional: default "https://api.minimaxi.com" / 留空使用默认地址COMMENT
LOWconfig.example.toml541# api_key = "your-mimo-api-key"COMMENT
LOWconfig.example.toml561# 定义可复用的 prompt 模板作为全局 slash 命令(所有项目通用)。COMMENT
LOWconfig.example.toml581# Usage / 用法:COMMENT
LOWconfig.example.toml601# name = "daily"COMMENT
LOWconfig.example.toml621# exec = "git checkout -b {{1}}"COMMENT
LOWconfig.example.toml641COMMENT
LOWconfig.example.toml661# 当用户发送的消息首词匹配别名触发词时,自动替换为目标命令。COMMENT
LOWconfig.example.toml681# /alias add 帮助 /helpCOMMENT
LOWconfig.example.toml701# [projects.agent]COMMENT
LOWconfig.example.toml721# show_context_indicator = false # Hide the footer's first line: model · [effort ·] out/in/cw/cr · ctx % (default: truCOMMENT
LOWconfig.example.toml741# admin_from must be defined at the [[projects]] level.COMMENT
LOWconfig.example.toml761# admin_from = "*"COMMENT
LOWconfig.example.toml781# [projects.users.roles.member]COMMENT
LOWconfig.example.toml801# silent = true # Suppress "💓" notification (default: true) / 不发送心跳通知(默认 true)COMMENT
LOWconfig.example.toml821# - "acceptEdits" (edit): File edit tools auto-approved; other tools still ask. / 文件编辑自动通过,其他仍需确认。COMMENT
LOWconfig.example.toml841COMMENT
LOWconfig.example.toml861# 可选:为每个项目单独配置环境变量,注入到 Claude Code 会话中。COMMENT
LOWconfig.example.toml881# When router_url is set, cc-connect will automatically:COMMENT
LOWconfig.example.toml901#COMMENT
LOWconfig.example.toml921# [[projects.agent.providers.models]]COMMENT
LOWconfig.example.toml941# # China-region accounts may use https://api.minimaxi.com/v1 / 中国区账号可使用 https://api.minimaxi.com/v1COMMENT
LOWconfig.example.toml961# # For special setups (Bedrock, Vertex, Foundry), use the env map:COMMENT
LOWconfig.example.toml981# normalize_agents: codex | claudecode | allCOMMENT
LOWconfig.example.toml1001# cc-connect feishu setup --project <project_name>COMMENT
LOWconfig.example.toml1021# reaction_emoji = "OnIt" # Emoji reaction on incoming messages (default: "OnIt"); set to "none" to disableCOMMENT
LOWconfig.example.toml1041# # 机器人间 @通知映射表:friendly_name -> open_id。COMMENT
LOWconfig.example.toml1061# 3. Add im.message.receive_v1 event and enable WebSocket long-connection mode (recommended)COMMENT
LOWconfig.example.toml1081COMMENT
LOWconfig.example.toml1101COMMENT
LOWconfig.example.toml1121# Telegram (uncomment to enable / 取消注释以启用)COMMENT
LOWconfig.example.toml1141# # so "card" is normalized to "compact". Set "legacy" to disable streaming edits.COMMENT
LOWconfig.example.toml1161# [projects.platforms.options]COMMENT
LOWconfig.example.toml1181# type = "webex"COMMENT
197 more matches not shown…
Structural Annotation Overuse84 hits · 132 pts
SeverityFileLineSnippetContext
LOWINSTALL.md19## Step 1: Install cc-connectCOMMENT
LOWINSTALL.md70## Step 2: Install your AI AgentCOMMENT
LOWINSTALL.md106## Step 3: Create config.tomlCOMMENT
LOWINSTALL.md171## Step 4: Configure a Messaging PlatformCOMMENT
LOWINSTALL.md464## Step 5: Run cc-connectCOMMENT
LOWINSTALL.md504## Step 6: Chat CommandsCOMMENT
LOWINSTALL.md528## Step 7: Enable Natural Language Scheduling (Non-Claude-Code Agents)COMMENT
LOWINSTALL.md744## Step 8: Run as Background Service (Optional)COMMENT
LOWcore/engine_test.go7912 // Step 3: New turn creates Session B and calls getOrCreateInteractiveStateWith.COMMENT
LOWcore/engine_test.go15212 // Step 2: send a message (this triggers startOrResumeSession + processInteractiveEvents)COMMENT
LOWcore/engine_test.go15222 // Step 3: verify session name was mappedCOMMENT
LOWcore/engine_test.go7898 // Step 1: Old turn created state S1 with old agent.COMMENT
LOWcore/engine_test.go7924 // Step 4: Old goroutine exits and calls cleanup with OLD state pointer.COMMENT
LOWcore/engine_test.go15234 // Step 4: verify /list displays the nameCOMMENT
LOWcore/engine.go16771 // Step 1: Check existing bindingCOMMENT
LOWcore/engine.go16779 // Step 2: Resolve channel name for convention matchCOMMENT
LOWcore/engine.go16794 // Step 3: Convention match — check if base_dir/<channel-name> existsCOMMENT
LOWplatform/feishu/feishu_test.go1298 // Step 1: opening message @mentions the bot — establishes the thread.COMMENT
LOWplatform/feishu/feishu_test.go1312 // Step 2: follow-up image in the same thread, no @mention — should pass through.COMMENT
LOWplatform/feishu/feishu_test.go1329 // Step 3: image in a *different* thread without @mention — should still be dropped.COMMENT
LOWplatform/feishu/feishu_test.go1340 // Step 4: text without @mention in the active thread — should be droppedCOMMENT
LOWplatform/wps-agentspace/wpsagentspace.go704 // Step 1: Get login URLCOMMENT
LOWplatform/wps-agentspace/wpsagentspace.go740 // Step 2: Open browserCOMMENT
LOWplatform/wps-agentspace/wpsagentspace.go745 // Step 3: Poll for tokenCOMMENT
LOWplatform/qq/qq.go330 // Step 1: Try direct URL from message segment (with longer timeout for large files)COMMENT
LOWplatform/qq/qq.go346 // Step 2: Get fresh direct link via NapCat API (CDN URLs expire / have download limits)COMMENT
LOWplatform/qq/qq.go390 // Step 3: Last resort — get_file (downloads to NapCat local or returns base64)COMMENT
LOWagent/copilot/session.go154 // Step 1: PingCOMMENT
LOWagent/copilot/session.go168 // Step 2: Create or resume sessionCOMMENT
LOWagent/claudecode/provider_env_test.go341 // Step 1: simulate the user's first message after `/provider switch minimax`.COMMENT
LOWagent/claudecode/provider_env_test.go354 // Step 2: simulate a cc-connect process restart. agent_session_id isCOMMENT
LOWagent/claudecode/provider_env_test.go363 // Step 3: engine looks up session.ActiveProvider and re-binds it beforeCOMMENT
LOWagent/codex/provider_resume_test.go43 // Step 1: simulate the user's `/provider switch alt-provider`.COMMENT
LOWagent/codex/provider_resume_test.go59 // Step 2: simulate restart — activeIdx is back to -1.COMMENT
LOWagent/codex/provider_resume_test.go68 // Step 3: engine calls restoreActiveProviderFromSession → SetActiveProvider.COMMENT
LOWagent/codex/integration_test.go30 // Step 1: write config.toml via our functionCOMMENT
LOWagent/codex/integration_test.go56 // Step 2: write auth.json via our functionCOMMENT
LOWagent/codex/integration_test.go78 // Step 3: run codex exec with the generated configCOMMENT
LOWagent/kimi/provider_resume_test.go42 // Step 1: simulate `/provider switch alt-provider`.COMMENT
LOWagent/kimi/provider_resume_test.go58 // Step 2: simulate restart — activeIdx is back to -1.COMMENT
LOWagent/kimi/provider_resume_test.go67 // Step 3: engine calls restoreActiveProviderFromSession → SetActiveProvider.COMMENT
LOWagent/opencode/provider_resume_test.go43 // Step 1: simulate `/provider switch alt-provider`.COMMENT
LOWagent/opencode/provider_resume_test.go59 // Step 2: simulate restart — activeIdx is back to -1.COMMENT
LOWagent/opencode/provider_resume_test.go68 // Step 3: engine calls restoreActiveProviderFromSession → SetActiveProvider.COMMENT
LOWdocs/slack.md15## Step 1: Create a Slack AppCOMMENT
LOWdocs/slack.md36## Step 2: Configure Bot UserCOMMENT
LOWdocs/slack.md58## Step 3: Configure Permissions (OAuth Scopes)COMMENT
LOWdocs/slack.md81## Step 4: Enable Socket ModeCOMMENT
LOWdocs/slack.md107## Step 5: Configure Event SubscriptionsCOMMENT
LOWdocs/slack.md133## Step 6: Install App to WorkspaceCOMMENT
LOWdocs/slack.md155## Step 7: Configure cc-connectCOMMENT
LOWdocs/slack.md187## Step 8: Start cc-connectCOMMENT
LOWdocs/slack.md209## Step 9: Start ChattingCOMMENT
LOWdocs/matrix.md15## Step 1: Create a Matrix AccountCOMMENT
LOWdocs/matrix.md28## Step 2: Get Your Access TokenCOMMENT
LOWdocs/matrix.md59## Step 3: Find Your User ID (Optional)COMMENT
LOWdocs/matrix.md67## Step 4: Configure cc-connectCOMMENT
LOWdocs/matrix.md104## Step 5: Start cc-connectCOMMENT
LOWdocs/matrix.md125## Step 6: Start ChattingCOMMENT
LOWdocs/telegram.md15## Step 1: Create a Telegram BotCOMMENT
24 more matches not shown…
Verbosity Indicators38 hits · 65 pts
SeverityFileLineSnippetContext
LOWcore/engine_test.go7909 // Step 2: /new runs — unconditional cleanup deletes S1.COMMENT
LOWcore/engine_test.go7912 // Step 3: New turn creates Session B and calls getOrCreateInteractiveStateWith.COMMENT
LOWcore/engine_test.go15209 // Step 1: /new "我的新会话"COMMENT
LOWcore/engine_test.go15212 // Step 2: send a message (this triggers startOrResumeSession + processInteractiveEvents)COMMENT
LOWcore/engine_test.go15222 // Step 3: verify session name was mappedCOMMENT
LOWcore/engine_test.go7898 // Step 1: Old turn created state S1 with old agent.COMMENT
LOWcore/engine_test.go7924 // Step 4: Old goroutine exits and calls cleanup with OLD state pointer.COMMENT
LOWcore/engine_test.go15234 // Step 4: verify /list displays the nameCOMMENT
LOWcore/engine.go16771 // Step 1: Check existing bindingCOMMENT
LOWcore/engine.go16779 // Step 2: Resolve channel name for convention matchCOMMENT
LOWcore/engine.go16794 // Step 3: Convention match — check if base_dir/<channel-name> existsCOMMENT
LOWplatform/feishu/feishu_test.go1298 // Step 1: opening message @mentions the bot — establishes the thread.COMMENT
LOWplatform/feishu/feishu_test.go1312 // Step 2: follow-up image in the same thread, no @mention — should pass through.COMMENT
LOWplatform/feishu/feishu_test.go1329 // Step 3: image in a *different* thread without @mention — should still be dropped.COMMENT
LOWplatform/feishu/feishu_test.go1340 // Step 4: text without @mention in the active thread — should be droppedCOMMENT
LOWplatform/wps-agentspace/wpsagentspace.go704 // Step 1: Get login URLCOMMENT
LOWplatform/wps-agentspace/wpsagentspace.go740 // Step 2: Open browserCOMMENT
LOWplatform/wps-agentspace/wpsagentspace.go745 // Step 3: Poll for tokenCOMMENT
LOWplatform/qq/qq.go330 // Step 1: Try direct URL from message segment (with longer timeout for large files)COMMENT
LOWplatform/qq/qq.go346 // Step 2: Get fresh direct link via NapCat API (CDN URLs expire / have download limits)COMMENT
LOWplatform/qq/qq.go390 // Step 3: Last resort — get_file (downloads to NapCat local or returns base64)COMMENT
LOWagent/copilot/session.go154 // Step 1: PingCOMMENT
LOWagent/copilot/session.go168 // Step 2: Create or resume sessionCOMMENT
LOWagent/claudecode/provider_env_test.go341 // Step 1: simulate the user's first message after `/provider switch minimax`.COMMENT
LOWagent/claudecode/provider_env_test.go354 // Step 2: simulate a cc-connect process restart. agent_session_id isCOMMENT
LOWagent/claudecode/provider_env_test.go363 // Step 3: engine looks up session.ActiveProvider and re-binds it beforeCOMMENT
LOWagent/codex/provider_resume_test.go43 // Step 1: simulate the user's `/provider switch alt-provider`.COMMENT
LOWagent/codex/provider_resume_test.go59 // Step 2: simulate restart — activeIdx is back to -1.COMMENT
LOWagent/codex/provider_resume_test.go68 // Step 3: engine calls restoreActiveProviderFromSession → SetActiveProvider.COMMENT
LOWagent/codex/integration_test.go30 // Step 1: write config.toml via our functionCOMMENT
LOWagent/codex/integration_test.go56 // Step 2: write auth.json via our functionCOMMENT
LOWagent/codex/integration_test.go78 // Step 3: run codex exec with the generated configCOMMENT
LOWagent/kimi/provider_resume_test.go42 // Step 1: simulate `/provider switch alt-provider`.COMMENT
LOWagent/kimi/provider_resume_test.go58 // Step 2: simulate restart — activeIdx is back to -1.COMMENT
LOWagent/kimi/provider_resume_test.go67 // Step 3: engine calls restoreActiveProviderFromSession → SetActiveProvider.COMMENT
LOWagent/opencode/provider_resume_test.go43 // Step 1: simulate `/provider switch alt-provider`.COMMENT
LOWagent/opencode/provider_resume_test.go59 // Step 2: simulate restart — activeIdx is back to -1.COMMENT
LOWagent/opencode/provider_resume_test.go68 // Step 3: engine calls restoreActiveProviderFromSession → SetActiveProvider.COMMENT
Fake / Example Data11 hits · 10 pts
SeverityFileLineSnippetContext
LOWcore/engine_test.go11547 {"git", "config", "user.email", "test@test.com"},CODE
LOWcore/engine_test.go11600 {"git", "config", "user.email", "test@test.com"},CODE
LOWcore/engine_test.go11670 {"git", "config", "user.email", "test@test.com"},CODE
LOWcore/bridge.go1433 "type": "select", "placeholder": e.Placeholder,CODE
LOWconfig/config.go791 "var", parts[1], "placeholder", match)CODE
LOWplatform/feishu/card.go233 "placeholder": plainText(e.Placeholder),CODE
LOWplatform/cloud-web/card.go47 "type": "select", "placeholder": e.Placeholder,CODE
LOWagent/pi/session.go715 placeholder, _ := raw["placeholder"].(string)CODE
LOWagent/pi/session.go732 "placeholder": placeholder,CODE
LOWdocs/bridge-protocol.zh-CN.md575 "placeholder": "选择一个模型",CODE
LOWdocs/bridge-protocol.md575 "placeholder": "Choose a model",CODE
AI Slop Vocabulary3 hits · 9 pts
SeverityFileLineSnippetContext
MEDIUMplatform/feishu/feishu.go3871 // Typed syscall checks — more robust than string matching.COMMENT
MEDIUMagent/claudecode/session_test.go789 // Issue #1736 regression harness: act as a Claude Code stub thatCOMMENT
MEDIUMagent/kimi/probe.go84// To stay robust against future layout tweaks the parser only treats a lineCOMMENT
Modern AI Meta-Vocabulary2 hits · 4 pts
SeverityFileLineSnippetContext
MEDIUMconfig.example.toml937# # MiniMax — OpenAI-compatible agent provider with 1M context windowCOMMENT
MEDIUMagent/claudecode/session.go853 // cached prefix, so on long agentic turns it vastly exceeds the modelCOMMENT
Redundant / Tautological Comments3 hits · 2 pts
SeverityFileLineSnippetContext
LOWconfig.example.toml52# Set 0 to keep the default. Raise it to send larger files; the /send requestCOMMENT
LOWconfig.example.toml1204# Set webhook_url to switch from long-poll to webhook. Required for high-trafficCOMMENT
LOWconfig.example.toml1826# Set init_command to start claude automatically; adjust prompt_pattern to matchCOMMENT