Scan timing: clone 2.23s · analysis 4.88s · 4.0 MB · GitHub API rate-limit (preflight)
https://github.com/CJackHwang/ds2api.git
· scanned 2026-05-24 01:22 UTC (1 week, 5 days ago)
· 10 languages
191 findings (128 legacy + 63 scanner) 69th percentile · Go · medium (20-100K LoC)
Last scanned 1 week, 5 days ago · v1 · 191 findings from 2 sources. Findings combine the legacy security pipeline AND the multi-layer engine (atlas, wiring, flows, ranked) AND verified AI agent contributions.
| Component | Sub-score | Weight | Contribution |
|---|---|---|---|
structure_score |
85.0 | 0.15 | 12.75 |
security_score |
59.5 | 0.25 | 14.88 |
testing_score |
85.0 | 0.20 | 17.00 |
documentation_score |
60.0 | 0.15 | 9.00 |
practices_score |
97.0 | 0.15 | 14.55 |
code_quality |
60.7 | 0.10 | 6.07 |
| Overall | 1.00 | 74.2 |
All 1169 nodes from the latest scan, grouped by kind. Each node is a unit the engine identified (file, function, endpoint, table…). Most users won't need this view — it's primarily for debugging the engine's graph extraction or for AI agents that want to enumerate the project structure.
| Label | Layer | Status | Path |
|---|---|---|---|
.releaserc.json |
software | healthy | .releaserc.json |
.golangci.yml |
software | healthy | .golangci.yml |
docker-compose.dev.yml |
software | healthy | docker-compose.dev.yml |
vercel.json |
software | healthy | vercel.json |
API.md |
software | healthy | API.md |
README.en.md |
software | healthy | README.en.md |
API.en.md |
software | healthy | API.en.md |
Dockerfile |
software | healthy | Dockerfile |
zeabur.yaml |
software | healthy | zeabur.yaml |
go.mod |
software | healthy | go.mod |
.env.example |
software | healthy | .env.example |
README.MD |
software | healthy | README.MD |
CODE_OF_CONDUCT.md |
software | healthy | CODE_OF_CONDUCT.md |
SECURITY.md |
software | healthy | SECURITY.md |
AGENTS.md |
software | healthy | AGENTS.md |
config.example.json |
software | healthy | config.example.json |
docker-compose.yml |
software | healthy | docker-compose.yml |
vite.config.js |
software | warning | webui/vite.config.js |
tailwind.config.js |
software | warning | webui/tailwind.config.js |
package.json |
software | healthy | webui/package.json |
index.html |
software | healthy | webui/index.html |
package-lock.json |
software | healthy | webui/package-lock.json |
postcss.config.js |
software | warning | webui/postcss.config.js |
styles.css |
software | healthy | webui/src/styles.css |
i18n.jsx |
software | healthy | webui/src/i18n.jsx |
App.jsx |
software | warning | webui/src/App.jsx |
main.jsx |
software | warning | webui/src/main.jsx |
DashboardShell.jsx |
software | healthy | webui/src/layout/DashboardShell.jsx |
maskSecret.js |
software | healthy | webui/src/utils/maskSecret.js |
runtimeEnv.js |
software | healthy | webui/src/utils/runtimeEnv.js |
batchImportTemplates.js |
software | healthy | webui/src/utils/batchImportTemplates.js |
LandingPage.jsx |
software | healthy | webui/src/components/LandingPage.jsx |
LanguageToggle.jsx |
software | healthy | webui/src/components/LanguageToggle.jsx |
Login.jsx |
software | healthy | webui/src/components/Login.jsx |
BatchImport.jsx |
software | healthy | webui/src/components/BatchImport.jsx |
AppRoutes.jsx |
software | healthy | webui/src/app/AppRoutes.jsx |
useAdminConfig.js |
software | healthy | webui/src/app/useAdminConfig.js |
useAdminAuth.js |
software | healthy | webui/src/app/useAdminAuth.js |
zh.json |
software | healthy | webui/src/locales/zh.json |
en.json |
software | healthy | webui/src/locales/en.json |
AutoDeleteSection.jsx |
software | healthy | webui/src/features/settings/AutoDeleteSection.jsx |
SecuritySection.jsx |
software | healthy | webui/src/features/settings/SecuritySection.jsx |
RuntimeSection.jsx |
software | healthy | webui/src/features/settings/RuntimeSection.jsx |
BehaviorSection.jsx |
software | healthy | webui/src/features/settings/BehaviorSection.jsx |
settingsApi.js |
software | healthy | webui/src/features/settings/settingsApi.js |
CurrentInputFileSection.jsx |
software | healthy | webui/src/features/settings/CurrentInputFileSection.jsx |
BackupSection.jsx |
software | healthy | webui/src/features/settings/BackupSection.jsx |
ModelSection.jsx |
software | healthy | webui/src/features/settings/ModelSection.jsx |
useSettingsForm.js |
software | healthy | webui/src/features/settings/useSettingsForm.js |
SettingsContainer.jsx |
software | healthy | webui/src/features/settings/SettingsContainer.jsx |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
getBrowserLang |
software | healthy | webui/src/i18n.jsx:getBrowserLang |
getValue |
software | healthy | webui/src/i18n.jsx:getValue |
formatMessage |
software | healthy | webui/src/i18n.jsx:formatMessage |
I18nProvider |
software | healthy | webui/src/i18n.jsx:I18nProvider |
useI18n |
software | healthy | webui/src/i18n.jsx:useI18n |
TabLoadingFallback |
software | healthy | webui/src/layout/DashboardShell.jsx:TabLoadingFallback |
DashboardShell |
software | healthy | webui/src/layout/DashboardShell.jsx:DashboardShell |
loadVersion |
software | healthy | webui/src/layout/DashboardShell.jsx:loadVersion |
renderTab |
software | healthy | webui/src/layout/DashboardShell.jsx:renderTab |
maskSecret |
software | healthy | webui/src/utils/maskSecret.js:maskSecret |
detectRuntimeEnv |
software | healthy | webui/src/utils/runtimeEnv.js:detectRuntimeEnv |
getBatchImportTemplates |
software | healthy | webui/src/utils/batchImportTemplates.js:getBatchImportTempl… |
LandingPage |
software | healthy | webui/src/components/LandingPage.jsx:LandingPage |
LanguageToggle |
software | healthy | webui/src/components/LanguageToggle.jsx:LanguageToggle |
Login |
software | healthy | webui/src/components/Login.jsx:Login |
handleLogin |
software | healthy | webui/src/components/Login.jsx:handleLogin |
BatchImport |
software | healthy | webui/src/components/BatchImport.jsx:BatchImport |
handleImport |
software | healthy | webui/src/components/BatchImport.jsx:handleImport |
loadTemplate |
software | healthy | webui/src/components/BatchImport.jsx:loadTemplate |
handleExport |
software | healthy | webui/src/components/BatchImport.jsx:handleExport |
copyBase64 |
software | healthy | webui/src/components/BatchImport.jsx:copyBase64 |
AppRoutes |
software | healthy | webui/src/app/AppRoutes.jsx:AppRoutes |
useAdminConfig |
software | healthy | webui/src/app/useAdminConfig.js:useAdminConfig |
useAdminAuth |
software | healthy | webui/src/app/useAdminAuth.js:useAdminAuth |
checkAuth |
software | healthy | webui/src/app/useAdminAuth.js:checkAuth |
AutoDeleteSection |
software | healthy | webui/src/features/settings/AutoDeleteSection.jsx:AutoDelet… |
SecuritySection |
software | healthy | webui/src/features/settings/SecuritySection.jsx:SecuritySec… |
RuntimeSection |
software | healthy | webui/src/features/settings/RuntimeSection.jsx:RuntimeSecti… |
BehaviorSection |
software | healthy | webui/src/features/settings/BehaviorSection.jsx:BehaviorSec… |
parseJSONResponse |
software | healthy | webui/src/features/settings/settingsApi.js:parseJSONResponse |
fetchSettings |
software | healthy | webui/src/features/settings/settingsApi.js:fetchSettings |
putSettings |
software | healthy | webui/src/features/settings/settingsApi.js:putSettings |
postPassword |
software | healthy | webui/src/features/settings/settingsApi.js:postPassword |
getExportData |
software | healthy | webui/src/features/settings/settingsApi.js:getExportData |
postImportData |
software | healthy | webui/src/features/settings/settingsApi.js:postImportData |
CurrentInputFileSection |
software | healthy | webui/src/features/settings/CurrentInputFileSection.jsx:Cur… |
BackupSection |
software | healthy | webui/src/features/settings/BackupSection.jsx:BackupSection |
ModelSection |
software | healthy | webui/src/features/settings/ModelSection.jsx:ModelSection |
parseJSONMap |
software | healthy | webui/src/features/settings/useSettingsForm.js:parseJSONMap |
normalizeAutoDeleteMode |
software | healthy | webui/src/features/settings/useSettingsForm.js:normalizeAut… |
fromServerForm |
software | healthy | webui/src/features/settings/useSettingsForm.js:fromServerFo… |
toServerPayload |
software | healthy | webui/src/features/settings/useSettingsForm.js:toServerPayl… |
useSettingsForm |
software | healthy | webui/src/features/settings/useSettingsForm.js:useSettingsF… |
pad |
software | healthy | webui/src/features/settings/useSettingsForm.js:pad |
SettingsContainer |
software | healthy | webui/src/features/settings/SettingsContainer.jsx:SettingsC… |
ChatHistoryContainer |
software | healthy | webui/src/features/chatHistory/ChatHistoryContainer.jsx:Cha… |
syncItems |
software | healthy | webui/src/features/chatHistory/ChatHistoryContainer.jsx:syn… |
loadList |
software | healthy | webui/src/features/chatHistory/ChatHistoryContainer.jsx:loa… |
loadDetail |
software | healthy | webui/src/features/chatHistory/ChatHistoryContainer.jsx:loa… |
handleResize |
software | healthy | webui/src/features/chatHistory/ChatHistoryContainer.jsx:han… |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
webui |
software | healthy | webui |
src |
software | healthy | webui/src |
layout |
software | healthy | webui/src/layout |
utils |
software | healthy | webui/src/utils |
components |
software | healthy | webui/src/components |
app |
software | healthy | webui/src/app |
locales |
software | healthy | webui/src/locales |
features |
software | healthy | webui/src/features |
settings |
software | healthy | webui/src/features/settings |
chatHistory |
software | healthy | webui/src/features/chatHistory |
proxy |
software | healthy | webui/src/features/proxy |
vercel |
software | healthy | webui/src/features/vercel |
account |
software | healthy | webui/src/features/account |
apiTester |
software | healthy | webui/src/features/apiTester |
tests |
software | healthy | tests |
raw_stream_samples |
software | healthy | tests/raw_stream_samples |
markdown-format-example-20260405 |
software | healthy | tests/raw_stream_samples/markdown-format-example-20260405 |
longtext-deepseek-v4-pro-20260429 |
software | healthy | tests/raw_stream_samples/longtext-deepseek-v4-pro-20260429 |
continue-thinking-snapshot-replay-20260405 |
software | healthy | tests/raw_stream_samples/continue-thinking-snapshot-replay-… |
markdown-format-example-20260405-spacefix |
software | healthy | tests/raw_stream_samples/markdown-format-example-20260405-s… |
longtext-deepseek-v4-flash-20260429 |
software | healthy | tests/raw_stream_samples/longtext-deepseek-v4-flash-20260429 |
node |
software | healthy | tests/node |
compat |
software | healthy | tests/compat |
expected |
software | healthy | tests/compat/expected |
fixtures |
software | healthy | tests/compat/fixtures |
toolcalls |
software | healthy | tests/compat/fixtures/toolcalls |
sse_chunks |
software | healthy | tests/compat/fixtures/sse_chunks |
scripts |
software | healthy | tests/scripts |
api |
software | healthy | api |
internal |
software | healthy | internal |
prompt |
software | healthy | internal/prompt |
toolstream |
software | healthy | internal/toolstream |
webui |
software | healthy | internal/webui |
config |
software | healthy | internal/config |
auth |
software | healthy | internal/auth |
toolcall |
software | healthy | internal/toolcall |
rawsample |
software | healthy | internal/rawsample |
assistantturn |
software | healthy | internal/assistantturn |
compat |
software | healthy | internal/compat |
util |
software | healthy | internal/util |
testsuite |
software | healthy | internal/testsuite |
js |
software | healthy | internal/js |
shared |
software | healthy | internal/js/shared |
helpers |
software | healthy | internal/js/helpers |
stream-tool-sieve |
software | healthy | internal/js/helpers/stream-tool-sieve |
chat-stream |
software | healthy | internal/js/chat-stream |
promptcompat |
software | healthy | internal/promptcompat |
stream |
software | healthy | internal/stream |
deepseek |
software | healthy | internal/deepseek |
client |
software | healthy | internal/deepseek/client |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
AppRoutes |
frontend | healthy | webui/src/App.jsx |
DashboardShell |
frontend | healthy | webui/src/layout/DashboardShell.jsx |
LandingPage |
frontend | healthy | webui/src/components/LandingPage.jsx |
LanguageToggle |
frontend | healthy | webui/src/components/LanguageToggle.jsx |
Login |
frontend | healthy | webui/src/components/Login.jsx |
BatchImport |
frontend | healthy | webui/src/components/BatchImport.jsx |
AppRoutes |
frontend | healthy | webui/src/app/AppRoutes.jsx |
AutoDeleteSection |
frontend | healthy | webui/src/features/settings/AutoDeleteSection.jsx |
SecuritySection |
frontend | healthy | webui/src/features/settings/SecuritySection.jsx |
RuntimeSection |
frontend | healthy | webui/src/features/settings/RuntimeSection.jsx |
BehaviorSection |
frontend | healthy | webui/src/features/settings/BehaviorSection.jsx |
CurrentInputFileSection |
frontend | healthy | webui/src/features/settings/CurrentInputFileSection.jsx |
BackupSection |
frontend | healthy | webui/src/features/settings/BackupSection.jsx |
ModelSection |
frontend | healthy | webui/src/features/settings/ModelSection.jsx |
SettingsContainer |
frontend | healthy | webui/src/features/settings/SettingsContainer.jsx |
ChatHistoryContainer |
frontend | healthy | webui/src/features/chatHistory/ChatHistoryContainer.jsx |
DetailConversation |
frontend | healthy | webui/src/features/chatHistory/ChatHistoryDetail.jsx |
ProxyManagerContainer |
frontend | healthy | webui/src/features/proxy/ProxyManagerContainer.jsx |
VercelSyncContainer |
frontend | healthy | webui/src/features/vercel/VercelSyncContainer.jsx |
VercelSyncForm |
frontend | healthy | webui/src/features/vercel/VercelSyncForm.jsx |
VercelGuide |
frontend | healthy | webui/src/features/vercel/VercelGuide.jsx |
VercelSyncStatus |
frontend | healthy | webui/src/features/vercel/VercelSyncStatus.jsx |
QueueCards |
frontend | healthy | webui/src/features/account/QueueCards.jsx |
AccountsTable |
frontend | healthy | webui/src/features/account/AccountsTable.jsx |
AccountManagerContainer |
frontend | healthy | webui/src/features/account/AccountManagerContainer.jsx |
ApiKeysPanel |
frontend | healthy | webui/src/features/account/ApiKeysPanel.jsx |
AddAccountModal |
frontend | healthy | webui/src/features/account/AddAccountModal.jsx |
EditAccountModal |
frontend | healthy | webui/src/features/account/EditAccountModal.jsx |
AddKeyModal |
frontend | healthy | webui/src/features/account/AddKeyModal.jsx |
ConfigPanel |
frontend | healthy | webui/src/features/apiTester/ConfigPanel.jsx |
ChatPanel |
frontend | healthy | webui/src/features/apiTester/ChatPanel.jsx |
ApiTesterContainer |
frontend | healthy | webui/src/features/apiTester/ApiTesterContainer.jsx |
| Label | Layer | Status | Path |
|---|---|---|---|
ALIYUN_REGISTRY_PASSWORD |
cicd | healthy | — |
GO_VERSION |
cicd | healthy | — |
RELEASE_TAG |
cicd | healthy | — |
GITHUB_TOKEN |
cicd | healthy | — |
DOCKERHUB_TOKEN |
cicd | healthy | — |
NODE_VERSION |
cicd | healthy | — |
ALIYUN_REGISTRY_USER |
cicd | healthy | — |
GOLANGCI_LINT_VERSION |
cicd | healthy | — |
ALIYUN_REGISTRY |
cicd | healthy | — |
ALIYUN_REGISTRY_NAMESPACE |
cicd | healthy | — |
DOCKERHUB_USERNAME |
cicd | healthy | — |
| Label | Layer | Status | Path |
|---|---|---|---|
auth::webui/src/locales/en.json |
security | healthy | webui/src/locales/en.json |
auth::webui/src/locales/zh.json |
security | healthy | webui/src/locales/zh.json |
auth::internal/httpapi/admin/handler_settings_test.go |
security | healthy | internal/httpapi/admin/handler_settings_test.go |
auth::internal/deepseek/client/client_auth.go |
security | healthy | internal/deepseek/client/client_auth.go |
auth::internal/auth/auth_edge_test.go |
security | healthy | internal/auth/auth_edge_test.go |
auth::internal/auth/admin_test.go |
security | healthy | internal/auth/admin_test.go |
auth::internal/auth/admin.go |
security | healthy | internal/auth/admin.go |
auth::internal/testsuite/runner_env.go |
security | healthy | internal/testsuite/runner_env.go |
| Label | Layer | Status | Path |
|---|---|---|---|
release |
cicd | healthy | .github/workflows/release-dockerhub.yml |
build-and-upload |
cicd | healthy | .github/workflows/release-artifacts.yml |
release |
cicd | healthy | .github/workflows/release.yml |
lint-and-refactor |
cicd | healthy | .github/workflows/quality-gates.yml |
go-unit |
cicd | healthy | .github/workflows/quality-gates.yml |
unit-all |
cicd | healthy | .github/workflows/quality-gates.yml |
webui-build |
cicd | healthy | .github/workflows/quality-gates.yml |
cross-build |
cicd | healthy | .github/workflows/quality-gates.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
127.0.0.1 |
network | healthy | tests/scripts/capture-raw-stream-sample.sh |
111.111.111.111 |
network | healthy | internal/toolcall/toolcalls_test.go |
203.0.113.10 |
network | healthy | internal/deepseek/client/proxy_test.go |
127.0.0.2 |
network | healthy | internal/httpapi/admin/proxies/handler_proxies_test.go |
| Label | Layer | Status | Path |
|---|---|---|---|
gha::release-dockerhub |
cicd | healthy | .github/workflows/release-dockerhub.yml |
gha::release-artifacts |
cicd | healthy | .github/workflows/release-artifacts.yml |
gha::release |
cicd | healthy | .github/workflows/release.yml |
gha::quality-gates |
cicd | healthy | .github/workflows/quality-gates.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
port:5001 |
network | healthy | Dockerfile |
port:5173 |
network | healthy | webui/vite.config.js |
port:1080 |
network | healthy | webui/src/features/proxy/ProxyManagerContainer.jsx |
| Label | Layer | Status | Path |
|---|---|---|---|
image::Dockerfile |
hardware | healthy | Dockerfile |
ds2api |
hardware | healthy | docker-compose.yml |
k8s::Template::zeabur.yaml |
hardware | healthy | zeabur.yaml |
| Label | Layer | Status | Path |
|---|---|---|---|
MockStreamRequest |
software | healthy | tests/node/chat-stream.test.js:MockStreamRequest |
MockStreamResponse |
software | healthy | tests/node/chat-stream.test.js:MockStreamResponse |
| Label | Layer | Status | Path |
|---|---|---|---|
/ |
frontend | healthy | webui/src/app/AppRoutes.jsx |
* |
frontend | healthy | webui/src/app/AppRoutes.jsx |
| Label | Layer | Status | Path |
|---|---|---|---|
repobility-clone-05w169o6 |
software | healthy | /tmp/repobility-clone-05w169o6 |
This page is publicly accessible at:
https://repobility.com/scan/7754021f-50b9-4416-9f65-4f7e38264c3b/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/7754021f-50b9-4416-9f65-4f7e38264c3b/
Important — please don't re-submit the same URL repeatedly. The submission endpoint is idempotent: re-submitting the same git URL returns this same scan_token, not a new one. To re-scan this repo, sign up free and use the dashboard.