https://github.com/thClaws/thClaws
· scanned 2026-05-31 01:25 UTC (5 days, 12 hours ago)
· 10 languages
239 findings (93 legacy + 146 scanner) 11/13 scanners ran 56th percentile · Rust · large (100-500K LoC)
Last scanned 5 days, 12 hours ago · v2 · 177 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 |
60.0 | 0.15 | 9.00 |
security_score |
100.0 | 0.25 | 25.00 |
testing_score |
20.0 | 0.20 | 4.00 |
documentation_score |
96.0 | 0.15 | 14.40 |
practices_score |
90.0 | 0.15 | 13.50 |
code_quality |
50.0 | 0.10 | 5.00 |
| Overall | 1.00 | 70.9 |
All 873 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 |
|---|---|---|---|
Cargo.toml |
software | healthy | Cargo.toml |
README.md |
software | healthy | README.md |
ENTERPRISE.md |
software | healthy | ENTERPRISE.md |
CONTRIBUTING.md |
software | healthy | CONTRIBUTING.md |
Dockerfile |
software | healthy | Dockerfile |
CODE_OF_CONDUCT.md |
software | healthy | CODE_OF_CONDUCT.md |
SECURITY.md |
software | healthy | SECURITY.md |
CHANGELOG.md |
software | healthy | CHANGELOG.md |
docker-compose.yml |
software | healthy | docker-compose.yml |
tsconfig.app.json |
software | healthy | frontend/tsconfig.app.json |
vite.config.ts |
software | warning | frontend/vite.config.ts |
README.md |
software | healthy | frontend/README.md |
pnpm-lock.yaml |
software | healthy | frontend/pnpm-lock.yaml |
package.json |
software | healthy | frontend/package.json |
tsconfig.node.json |
software | healthy | frontend/tsconfig.node.json |
index.html |
software | healthy | frontend/index.html |
eslint.config.js |
software | warning | frontend/eslint.config.js |
tsconfig.json |
software | healthy | frontend/tsconfig.json |
index.css |
software | healthy | frontend/src/index.css |
global.d.ts |
software | warning | frontend/src/global.d.ts |
main.tsx |
software | warning | frontend/src/main.tsx |
App.tsx |
software | healthy | frontend/src/App.tsx |
SlashCommandPopup.tsx |
software | healthy | frontend/src/components/SlashCommandPopup.tsx |
TerminalView.tsx |
software | healthy | frontend/src/components/TerminalView.tsx |
FilesView.tsx |
software | healthy | frontend/src/components/FilesView.tsx |
KmsCreateModal.tsx |
software | healthy | frontend/src/components/KmsCreateModal.tsx |
KmsViewerOverlay.tsx |
software | healthy | frontend/src/components/KmsViewerOverlay.tsx |
TeamView.tsx |
software | healthy | frontend/src/components/TeamView.tsx |
KmsGraphView.tsx |
software | healthy | frontend/src/components/KmsGraphView.tsx |
SettingsMenu.tsx |
software | healthy | frontend/src/components/SettingsMenu.tsx |
TodoSidebar.tsx |
software | healthy | frontend/src/components/TodoSidebar.tsx |
ShellView.tsx |
software | healthy | frontend/src/components/ShellView.tsx |
ModelPickerModal.tsx |
software | healthy | frontend/src/components/ModelPickerModal.tsx |
BackgroundAgentsSidebar.tsx |
software | healthy | frontend/src/components/BackgroundAgentsSidebar.tsx |
KmsBrowserSidebar.tsx |
software | healthy | frontend/src/components/KmsBrowserSidebar.tsx |
PlanSidebar.tsx |
software | healthy | frontend/src/components/PlanSidebar.tsx |
SettingsModal.tsx |
software | healthy | frontend/src/components/SettingsModal.tsx |
WorkflowReviewBubble.tsx |
software | healthy | frontend/src/components/WorkflowReviewBubble.tsx |
InstructionsEditorModal.tsx |
software | healthy | frontend/src/components/InstructionsEditorModal.tsx |
GoalSidebar.tsx |
software | healthy | frontend/src/components/GoalSidebar.tsx |
ContextWarningBanner.tsx |
software | healthy | frontend/src/components/ContextWarningBanner.tsx |
TelegramConnectModal.tsx |
software | healthy | frontend/src/components/TelegramConnectModal.tsx |
LoginButton.tsx |
software | healthy | frontend/src/components/LoginButton.tsx |
ApprovalModal.tsx |
software | healthy | frontend/src/components/ApprovalModal.tsx |
ModelPickerDropdown.tsx |
software | healthy | frontend/src/components/ModelPickerDropdown.tsx |
Sidebar.tsx |
software | healthy | frontend/src/components/Sidebar.tsx |
MessengerConnectModal.tsx |
software | healthy | frontend/src/components/MessengerConnectModal.tsx |
ScheduleAddModal.tsx |
software | healthy | frontend/src/components/ScheduleAddModal.tsx |
MarkdownEditor.tsx |
software | healthy | frontend/src/components/MarkdownEditor.tsx |
ShellPicker.tsx |
software | healthy | frontend/src/components/ShellPicker.tsx |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
FrontendReadyBeacon |
software | healthy | frontend/src/App.tsx:FrontendReadyBeacon |
StartupModal |
software | healthy | frontend/src/App.tsx:StartupModal |
handleStart |
software | healthy | frontend/src/App.tsx:handleStart |
App |
software | healthy | frontend/src/App.tsx:App |
onKeyDown |
software | healthy | frontend/src/App.tsx:onKeyDown |
value |
software | healthy | frontend/src/App.tsx:value |
effectiveTab |
software | healthy | frontend/src/App.tsx:effectiveTab |
SlashCommandPopup |
software | healthy | frontend/src/components/SlashCommandPopup.tsx:SlashCommandP… |
filterCommands |
software | healthy | frontend/src/components/SlashCommandPopup.tsx:filterCommands |
groupByCategory |
software | healthy | frontend/src/components/SlashCommandPopup.tsx:groupByCatego… |
b64decode |
software | healthy | frontend/src/components/TerminalView.tsx:b64decode |
TerminalView |
software | healthy | frontend/src/components/TerminalView.tsx:TerminalView |
redrawLine |
software | healthy | frontend/src/components/TerminalView.tsx:redrawLine |
replaceLineBuffer |
software | healthy | frontend/src/components/TerminalView.tsx:replaceLineBuffer |
recomputeSlash |
software | healthy | frontend/src/components/TerminalView.tsx:recomputeSlash |
acceptSlashCommand |
software | healthy | frontend/src/components/TerminalView.tsx:acceptSlashCommand |
pushHistory |
software | healthy | frontend/src/components/TerminalView.tsx:pushHistory |
writePrompt |
software | healthy | frontend/src/components/TerminalView.tsx:writePrompt |
writeVersionThenPrompt |
software | healthy | frontend/src/components/TerminalView.tsx:writeVersionThenPr… |
next |
software | healthy | frontend/src/components/TerminalView.tsx:next |
applyPastedText |
software | healthy | frontend/src/components/TerminalView.tsx:applyPastedText |
combined |
software | healthy | frontend/src/components/TerminalView.tsx:combined |
newlinesInBuffer |
software | healthy | frontend/src/components/TerminalView.tsx:newlinesInBuffer |
platformConfirm |
software | healthy | frontend/src/components/FilesView.tsx:platformConfirm |
extOf |
software | healthy | frontend/src/components/FilesView.tsx:extOf |
isTextEditable |
software | healthy | frontend/src/components/FilesView.tsx:isTextEditable |
shortPath |
software | healthy | frontend/src/components/FilesView.tsx:shortPath |
isMarkdownPath |
software | healthy | frontend/src/components/FilesView.tsx:isMarkdownPath |
assetUrl |
software | healthy | frontend/src/components/FilesView.tsx:assetUrl |
injectBaseHref |
software | healthy | frontend/src/components/FilesView.tsx:injectBaseHref |
FilesView |
software | healthy | frontend/src/components/FilesView.tsx:FilesView |
navigate |
software | healthy | frontend/src/components/FilesView.tsx:navigate |
goUp |
software | healthy | frontend/src/components/FilesView.tsx:goUp |
startCreate |
software | healthy | frontend/src/components/FilesView.tsx:startCreate |
submitCreate |
software | healthy | frontend/src/components/FilesView.tsx:submitCreate |
onSidebarClick |
software | healthy | frontend/src/components/FilesView.tsx:onSidebarClick |
closePreview |
software | healthy | frontend/src/components/FilesView.tsx:closePreview |
enterEditMode |
software | healthy | frontend/src/components/FilesView.tsx:enterEditMode |
refreshPreview |
software | healthy | frontend/src/components/FilesView.tsx:refreshPreview |
exitEditMode |
software | healthy | frontend/src/components/FilesView.tsx:exitEditMode |
handler |
software | healthy | frontend/src/components/FilesView.tsx:handler |
KmsCreateModal |
software | healthy | frontend/src/components/KmsCreateModal.tsx:KmsCreateModal |
submit |
software | healthy | frontend/src/components/KmsCreateModal.tsx:submit |
Field |
software | healthy | frontend/src/components/KmsCreateModal.tsx:Field |
KmsViewerOverlay |
software | healthy | frontend/src/components/KmsViewerOverlay.tsx:KmsViewerOverl… |
handler |
software | healthy | frontend/src/components/KmsViewerOverlay.tsx:handler |
startEdit |
software | healthy | frontend/src/components/KmsViewerOverlay.tsx:startEdit |
saveEdit |
software | healthy | frontend/src/components/KmsViewerOverlay.tsx:saveEdit |
goBack |
software | healthy | frontend/src/components/KmsViewerOverlay.tsx:goBack |
renderMarkdownToHtml |
software | healthy | frontend/src/components/KmsViewerOverlay.tsx:renderMarkdown… |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
frontend |
software | healthy | frontend |
src |
software | healthy | frontend/src |
components |
software | healthy | frontend/src/components |
hooks |
software | healthy | frontend/src/hooks |
thclaws-technical-manual |
software | healthy | thclaws-technical-manual |
paperclip-adapter |
software | healthy | paperclip-adapter |
src |
software | healthy | paperclip-adapter/src |
server |
software | healthy | paperclip-adapter/src/server |
user-manual-th |
software | healthy | user-manual-th |
scripts |
software | healthy | scripts |
crates |
software | healthy | crates |
core |
software | healthy | crates/core |
resources |
software | healthy | crates/core/resources |
assets |
software | healthy | crates/core/assets |
gui-shells |
software | healthy | crates/core/assets/gui-shells |
chatbot |
software | healthy | crates/core/assets/gui-shells/chatbot |
session-explorer |
software | healthy | crates/core/assets/gui-shells/session-explorer |
src |
software | healthy | crates/core/src |
policy |
software | healthy | crates/core/src/policy |
multi_tenant |
software | healthy | crates/core/src/multi_tenant |
line |
software | healthy | crates/core/src/line |
research |
software | healthy | crates/core/src/research |
default_prompts |
software | healthy | crates/core/src/default_prompts |
commands |
software | healthy | crates/core/src/default_prompts/commands |
skills |
software | healthy | crates/core/src/default_prompts/skills |
telegram |
software | healthy | crates/core/src/telegram |
messenger |
software | healthy | crates/core/src/messenger |
providers |
software | healthy | crates/core/src/providers |
workflow |
software | healthy | crates/core/src/workflow |
api_v1 |
software | healthy | crates/core/src/api_v1 |
tools |
software | healthy | crates/core/src/tools |
sso |
software | healthy | crates/core/src/sso |
gui_shell |
software | healthy | crates/core/src/gui_shell |
user-manual |
software | healthy | user-manual |
.github |
software | healthy | .github |
ISSUE_TEMPLATE |
software | healthy | .github/ISSUE_TEMPLATE |
workflows |
software | healthy | .github/workflows |
| Label | Layer | Status | Path |
|---|---|---|---|
auth::frontend/src/components/LoginButton.tsx |
security | healthy | frontend/src/components/LoginButton.tsx |
auth::crates/core/src/sso/pkce.rs |
security | healthy | crates/core/src/sso/pkce.rs |
auth::crates/core/src/messenger/protocol.rs |
security | healthy | crates/core/src/messenger/protocol.rs |
auth::crates/core/src/plugins.rs |
security | healthy | crates/core/src/plugins.rs |
auth::crates/core/src/line/mod.rs |
security | healthy | crates/core/src/line/mod.rs |
auth::crates/core/src/sso/storage.rs |
security | healthy | crates/core/src/sso/storage.rs |
auth::crates/core/build.rs |
security | healthy | crates/core/build.rs |
auth::crates/core/src/sso/loopback.rs |
security | healthy | crates/core/src/sso/loopback.rs |
auth::crates/core/src/codex_auth.rs |
security | healthy | crates/core/src/codex_auth.rs |
auth::crates/core/src/line/config.rs |
security | healthy | crates/core/src/line/config.rs |
auth::crates/core/src/policy/mod.rs |
security | healthy | crates/core/src/policy/mod.rs |
auth::crates/core/src/login_codex.rs |
security | healthy | crates/core/src/login_codex.rs |
auth::crates/core/src/messenger/client.rs |
security | healthy | crates/core/src/messenger/client.rs |
auth::crates/core/src/ipc.rs |
security | healthy | crates/core/src/ipc.rs |
auth::crates/core/src/config.rs |
security | healthy | crates/core/src/config.rs |
auth::crates/core/src/messenger/mod.rs |
security | healthy | crates/core/src/messenger/mod.rs |
auth::crates/core/src/policy/error.rs |
security | healthy | crates/core/src/policy/error.rs |
auth::crates/core/src/api_v1/oauth_callback.rs |
security | healthy | crates/core/src/api_v1/oauth_callback.rs |
auth::crates/core/src/codex_auth_store.rs |
security | healthy | crates/core/src/codex_auth_store.rs |
auth::crates/core/src/oauth.rs |
security | healthy | crates/core/src/oauth.rs |
auth::crates/core/src/sso/builtin.rs |
security | healthy | crates/core/src/sso/builtin.rs |
auth::crates/core/src/api_v1/chat.rs |
security | healthy | crates/core/src/api_v1/chat.rs |
auth::crates/core/src/shell_dispatch.rs |
security | healthy | crates/core/src/shell_dispatch.rs |
auth::crates/core/src/sso/discovery.rs |
security | healthy | crates/core/src/sso/discovery.rs |
auth::crates/core/src/messenger/config.rs |
security | healthy | crates/core/src/messenger/config.rs |
auth::crates/core/src/shared_session.rs |
security | healthy | crates/core/src/shared_session.rs |
auth::crates/core/src/lib.rs |
security | healthy | crates/core/src/lib.rs |
auth::crates/core/src/kms.rs |
security | healthy | crates/core/src/kms.rs |
auth::crates/core/src/mcp.rs |
security | healthy | crates/core/src/mcp.rs |
auth::crates/core/src/line/client.rs |
security | healthy | crates/core/src/line/client.rs |
auth::crates/core/src/providers/mod.rs |
security | healthy | crates/core/src/providers/mod.rs |
auth::crates/core/src/messenger/headless.rs |
security | healthy | crates/core/src/messenger/headless.rs |
auth::crates/core/src/providers/openai_responses.rs |
security | healthy | crates/core/src/providers/openai_responses.rs |
auth::crates/core/src/providers/gateway.rs |
security | healthy | crates/core/src/providers/gateway.rs |
auth::crates/core/src/api_v1/mod.rs |
security | healthy | crates/core/src/api_v1/mod.rs |
auth::crates/core/src/repl.rs |
security | healthy | crates/core/src/repl.rs |
auth::crates/core/src/sso/mod.rs |
security | healthy | crates/core/src/sso/mod.rs |
| Label | Layer | Status | Path |
|---|---|---|---|
audit |
cicd | healthy | .github/workflows/cargo-audit.yml |
fmt |
cicd | healthy | .github/workflows/ci.yml |
frontend |
cicd | healthy | .github/workflows/ci.yml |
clippy |
cicd | healthy | .github/workflows/ci.yml |
build |
cicd | healthy | .github/workflows/ci.yml |
test |
cicd | healthy | .github/workflows/ci.yml |
build |
cicd | healthy | .github/workflows/release.yml |
macos-dmg |
cicd | healthy | .github/workflows/release.yml |
release |
cicd | healthy | .github/workflows/release.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
SM_CLIENT_CERT_FILE_B64 |
cicd | healthy | — |
SM_API_KEY |
cicd | healthy | — |
SM_CLIENT_CERT_PASSWORD |
cicd | healthy | — |
SM_CERT_FINGERPRINT |
cicd | healthy | — |
| Label | Layer | Status | Path |
|---|---|---|---|
gha::cargo-audit |
cicd | healthy | .github/workflows/cargo-audit.yml |
gha::ci |
cicd | healthy | .github/workflows/ci.yml |
gha::release |
cicd | healthy | .github/workflows/release.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
port:8443 |
network | healthy | Dockerfile |
port:05 |
network | healthy | .github/workflows/cargo-audit.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
127.0.0.1 |
network | healthy | Dockerfile |
203.150.118.93 |
network | healthy | crates/core/src/providers/thclaws_gateway.rs |
| Label | Layer | Status | Path |
|---|---|---|---|
image::Dockerfile |
hardware | healthy | Dockerfile |
thclaws |
hardware | healthy | docker-compose.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
repobility-clone-7i6fdo4s |
software | healthy | /tmp/repobility-clone-7i6fdo4s |
| Label | Layer | Status | Path |
|---|---|---|---|
matched |
software | healthy | frontend/src/components/InstructionsEditorModal.tsx:matched |
| Label | Layer | Status | Path |
|---|---|---|---|
vps::azure |
hardware | healthy | frontend/src/components/SettingsModal.tsx |
| Label | Layer | Status | Path |
|---|---|---|---|
gpu (detected) |
hardware | healthy | frontend/src/components/ChatView.tsx |
| Label | Layer | Status | Path |
|---|---|---|---|
App |
frontend | healthy | frontend/src/App.tsx |
This page is publicly accessible at:
https://repobility.com/scan/35c0bd90-7a84-43f2-96fa-aa9e363646bc/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/35c0bd90-7a84-43f2-96fa-aa9e363646bc/
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.