An open-source and free self-hosted SSL certificates ACME tool, automates the full-cycle of issuance, deployment, renewal, and monitoring visually. 完全开源免费的自托管 SSL 证书 ACME 工具,申请、部署、续期、监控全流程自动化可视化,支持各大主流云厂商。
This report presents the forensic synthetic code analysis of certimate-go/certimate, a Go project with 8,796 GitHub stars. SynthScan v2.0 examined 186,370 lines of code across 2104 source files, recording 1562 pattern matches distributed across 5 syntactic categories. The overall adjusted score of 7.1 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).
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 1562 distinct pattern matches across 5 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 | ui/src/i18n/resources/zh/nls.login.json | 7 | "placeholder": "请输入用户名/邮箱" | CODE |
| LOW | ui/src/i18n/resources/zh/nls.login.json | 11 | "placeholder": "请输入密码" | CODE |
| LOW | ui/src/i18n/resources/zh/nls.certificate.json | 17 | "placeholder": "按证书名称或序列号搜索……" | CODE |
| LOW | ui/src/i18n/resources/zh/nls.certificate.json | 56 | "placeholder": "请输入 PFX 导出密码" | CODE |
| LOW | ui/src/i18n/resources/zh/nls.certificate.json | 60 | "placeholder": "请选择 PFX 编码器", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.certificate.json | 78 | "placeholder": "请输入 JKS 别名" | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.certificate.json | 82 | "placeholder": "请输入 JKS 私钥访问口令" | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.certificate.json | 86 | "placeholder": "请输入 JKS 密钥库存储口令" | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.preset.json | 46 | "placeholder": "请输入模板名称", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.preset.json | 53 | "placeholder": "请输入通知主题" | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.preset.json | 57 | "placeholder": "请输入通知内容" | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.preset.json | 61 | "placeholder": "请输入脚本命令" | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 71 | "placeholder": "请输入授权名称" | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 75 | "placeholder": "请选择提供商", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 78 | "placeholder": "搜索提供商……" | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 84 | "placeholder": "请输入 ACME EAB KID" | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 88 | "placeholder": "请输入 ACME EAB HMAC Key" | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 96 | "placeholder": "请输入 1Panel 服务地址", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 101 | "placeholder": "请选择 1Panel 版本" | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 105 | "placeholder": "请输入 1Panel 接口密钥", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 110 | "placeholder": "请输入三五互联代理商用户名" | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 114 | "placeholder": "请输入三五互联代理商 API 密码" | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 121 | "placeholder": "请输入帝恩思 API Key", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 126 | "placeholder": "请输入帝恩思 API Secret", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 131 | "placeholder": "请输入服务端点", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 136 | "placeholder": "请输入 ACME EAB KID" | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 140 | "placeholder": "请输入 ACME EAB HMAC Key" | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 144 | "placeholder": "请输入 ACME-DNS 服务地址" | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 148 | "placeholder": "请输入 ACME-DNS 凭证文件", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 153 | "placeholder": "请输入服务端点", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 158 | "placeholder": "请选择模式", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 163 | "placeholder": "请输入 HTTP 基本认证用户名", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 168 | "placeholder": "请输入 HTTP 基本认证密码", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 176 | "placeholder": "请输入 Akamai API Host", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 181 | "placeholder": "请输入 Akamai ClientToken", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 186 | "placeholder": "请输入 Akamai ClientSecret", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 191 | "placeholder": "请输入 Akamai AccessToken", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 196 | "placeholder": "请输入阿里云 AccessKeyID", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 201 | "placeholder": "请输入阿里云 AccessKeySecret", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 206 | "placeholder": "请输入阿里云资源组 ID", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 211 | "placeholder": "请输入 APISIX 服务地址" | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 215 | "placeholder": "请输入 APISIX Admin API Key", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 220 | "placeholder": "请输入 ArvanCloud API 密钥", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 225 | "placeholder": "请输入 AWS AccessKeyID", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 230 | "placeholder": "请输入 AWS SecretAccessKey", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 235 | "placeholder": "请输入 Azure 租户 ID", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 240 | "placeholder": "请输入 Azure 客户端 ID", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 245 | "placeholder": "请输入 Azure 客户端密码", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 250 | "placeholder": "请输入 Azure 订阅 ID", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 255 | "placeholder": "请输入 Azure 资源组名称", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 260 | "placeholder": "请输入 Azure 主权云环境(例如:public)", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 265 | "placeholder": "请输入百度智能云 AccessKeyID", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 270 | "placeholder": "请输入百度智能云 SecretAccessKey", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 275 | "placeholder": "请输入白山云 API Token" | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 279 | "placeholder": "请输入宝塔面板服务地址", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 284 | "placeholder": "请输入宝塔面板接口密钥", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 289 | "placeholder": "请输入宝塔面板极速版服务地址", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 294 | "placeholder": "请输入宝塔面板极速版接口密钥", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 299 | "placeholder": "请输入堡塔云 WAF 服务地址", | CODE |
| LOW⚡ | ui/src/i18n/resources/zh/nls.access.json | 304 | "placeholder": "请输入堡塔云 WAF 接口密钥", | CODE |
| 1459 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | pkg/core/deployer/providers/samwaf/samwaf_test.go | 34 | --SAMWAF_APIKEY="your-api-key" \ | CODE |
| HIGH | …roviders/baotapanel-console/baotapanel_console_test.go | 32 | --BAOTAPANELCONSOLE_APIKEY="your-api-key" | CODE |
| HIGH | pkg/core/deployer/providers/apisix/apisix_test.go | 34 | --APISIX_APIKEY="your-api-key" \ | CODE |
| HIGH | …ployer/providers/1panel-console/1panel_console_test.go | 35 | --1PANELCONSOLE_APIKEY="your-api-key" | CODE |
| HIGH | …/providers/rainyun-sslcenter/rainyun_sslcenter_test.go | 29 | --RAINYUNRCDN_APIKEY="your-api-key" | CODE |
| HIGH | …ders/baotapanelgo-console/baotapanelgo_console_test.go | 32 | --BAOTAPANELGOCONSOLE_APIKEY="your-api-key" | CODE |
| HIGH | …deployer/providers/wangsu-cdnpro/wangsu_cdnpro_test.go | 43 | --WANGSUCDNPRO_APIKEY="your-api-key" \ | CODE |
| HIGH | …e/deployer/providers/baotapanelgo/baotapanelgo_test.go | 36 | --BAOTAPANELGO_APIKEY="your-api-key" \ | CODE |
| HIGH | …e/deployer/providers/rainyun-rcdn/rainyun_rcdn_test.go | 33 | --RAINYUNRCDN_APIKEY="your-api-key" \ | CODE |
| HIGH | pkg/core/deployer/providers/1panel/1panel_test.go | 39 | --1PANEL_APIKEY="your-api-key" \ | CODE |
| HIGH | …/core/deployer/providers/baotapanel/baotapanel_test.go | 36 | --BAOTAPANEL_APIKEY="your-api-key" \ | CODE |
| HIGH | …ployer/providers/samwaf-console/samwaf_console_test.go | 32 | --SAMWAFCONSOLE_APIKEY="your-api-key" \ | CODE |
| HIGH | pkg/core/deployer/providers/cdnfly/cdnfly_test.go | 36 | --CDNFLY_APIKEY="your-api-key" \ | CODE |
| HIGH | pkg/core/deployer/providers/baotawaf/baotawaf_test.go | 36 | --BAOTAWAF_APIKEY="your-api-key" \ | CODE |
| HIGH | …er/providers/baotawaf-console/baotawaf_console_test.go | 34 | --BAOTAWAFCONSOLE_APIKEY="your-api-key" | CODE |
| HIGH | pkg/core/certmgr/providers/dokploy/dokploy_test.go | 32 | --DOKPLOY_APIKEY="your-api-key" | CODE |
| HIGH | …/providers/rainyun-sslcenter/rainyun_sslcenter_test.go | 29 | --RAINYUNSSLCENTER_APIKEY="your-api-key" | CODE |
| HIGH | pkg/core/certmgr/providers/1panel/1panel_test.go | 35 | --1PANEL_APIKEY="your-api-key" | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | ui/src/components/workflow/designer/_util.ts | 21 | */ | COMMENT |
| LOW | pkg/core/deployer.go | 1 | package core | COMMENT |
| LOW | pkg/core/certmgr.go | 1 | package core | COMMENT |
| LOW | pkg/core/certmgr.go | 21 | // - err: 错误。 | COMMENT |
| LOW | pkg/core/notifier.go | 1 | package core | COMMENT |
| LOW | pkg/core/deployer/providers/ftp/ftp.go | 21 | // FTP 主机。 | COMMENT |
| LOW | pkg/core/deployer/providers/s3/s3.go | 21 | Endpoint string `json:"endpoint"` | COMMENT |
| LOW | pkg/core/deployer/providers/s3/s3.go | 41 | ObjectKeyForKey string `json:"objectKeyForKey,omitempty"` | COMMENT |
| LOW | …eployer/providers/tencentcloud-tse/tencentcloud_tse.go | 21 | SecretKey string `json:"secretKey"` | COMMENT |
| LOW | pkg/core/deployer/providers/local/local.go | 41 | // 选填。 | COMMENT |
| LOW | pkg/core/deployer/providers/ssh/ssh.go | 21 | type ServerConfig struct { | COMMENT |
| LOW | pkg/core/deployer/providers/ssh/ssh.go | 61 | FilePathForCrtOnlyServer string `json:"filePathForCrtOnlyServer,omitempty"` | COMMENT |
| LOW | pkg/core/deployer/providers/lecdn/lecdn.go | 21 | // LeCDN 服务地址。 | COMMENT |
| LOW | pkg/core/notifier/providers/email/email.go | 21 | SmtpHost string `json:"smtpHost"` | COMMENT |
| LOW | pkg/utils/maps/get.go | 41 | return defaultValue | COMMENT |
| LOW | pkg/utils/maps/get.go | 181 | COMMENT | |
| LOW | pkg/utils/wait/until.go | 61 | // 出参: | COMMENT |
| LOW | pkg/utils/ssh/io.go | 21 | // - data: 文件数据字节数组。 | COMMENT |
| LOW | pkg/utils/ssh/io.go | 41 | // - data: 文件数据字节数组。 | COMMENT |
| LOW | pkg/utils/cert/transformer.go | 61 | // 将 PEM 编码的证书字符串转换为 JKS 格式。 | COMMENT |
| LOW | pkg/utils/cert/parser.go | 21 | } | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .github/workflows/release_sync_gitee.py | 49 | except Exception as e: | CODE |
| LOW | .github/workflows/release_sync_gitee.py | 266 | except Exception as e: | CODE |
| MEDIUM | .github/workflows/release_sync_gitee.py | 224 | def main(): | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .github/workflows/release_sync_gitee.py | 53 | def get_github_stable_release(): | CODE |