Scan timing: clone 3.02s · analysis 3.24s · 11.0 MB · GitHub API rate-limit (preflight)
https://github.com/xvirobotics/metabot
· scanned 2026-05-31 01:23 UTC (5 days, 7 hours ago)
· 10 languages
216 findings (85 legacy + 131 scanner) 71st percentile · Typescript · medium (20-100K LoC) Scanner says 72 (higher by 8)
Last scanned 5 days, 7 hours ago · v2 · 150 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 |
64.3 | 0.25 | 16.07 |
testing_score |
95.0 | 0.20 | 19.00 |
documentation_score |
92.0 | 0.15 | 13.80 |
practices_score |
87.0 | 0.15 | 13.05 |
code_quality |
54.6 | 0.10 | 5.46 |
| Overall | 1.00 | 80.1 |
All 985 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 |
|---|---|---|---|
createLogger |
software | healthy | tests/memory-server.test.ts:createLogger |
startTestServer |
software | healthy | tests/memory-server.test.ts:startTestServer |
startAuthenticatedTestServer |
software | healthy | tests/memory-server.test.ts:startAuthenticatedTestServer |
buildHandler |
software | healthy | tests/command-handler-stop.test.ts:buildHandler |
stopMessage |
software | healthy | tests/command-handler-stop.test.ts:stopMessage |
makeExec |
software | healthy | tests/between-turn-question.test.ts:makeExec |
getHook |
software | healthy | tests/between-turn-question.test.ts:getHook |
hooks |
software | healthy | tests/between-turn-question.test.ts:hooks |
msg |
software | healthy | tests/stream-processor.test.ts:msg |
makeFakeExecutor |
software | healthy | tests/executor-registry-race.test.ts:makeFakeExecutor |
origCreate |
software | healthy | tests/executor-registry-race.test.ts:origCreate |
acquirePromise |
software | healthy | tests/executor-registry-race.test.ts:acquirePromise |
pending |
software | healthy | tests/executor-registry-race.test.ts:pending |
makeAdapter |
software | healthy | tests/feishu-sender-adapter.test.ts:makeAdapter |
createLogger |
software | healthy | tests/session-manager.test.ts:createLogger |
makeExec |
software | healthy | tests/exit-plan-mode-auto-approve.test.ts:makeExec |
hooks |
software | healthy | tests/exit-plan-mode-auto-approve.test.ts:hooks |
buildSender |
software | healthy | tests/output-handler.test.ts:buildSender |
emptyState |
software | healthy | tests/output-handler.test.ts:emptyState |
createMockLogger |
software | healthy | tests/task-scheduler-recurring.test.ts:createMockLogger |
createMockRegistry |
software | healthy | tests/task-scheduler-recurring.test.ts:createMockRegistry |
bot |
software | healthy | tests/task-scheduler-recurring.test.ts:bot |
findElements |
software | healthy | tests/card-builder-v2.test.ts:findElements |
createMockLogger |
software | healthy | tests/audit-logger.test.ts:createMockLogger |
big |
software | healthy | tests/message-bridge.test.ts:big |
createLogger |
software | healthy | tests/doc-sync.test.ts:createLogger |
createMockLarkClient |
software | healthy | tests/doc-sync.test.ts:createMockLarkClient |
createMockMemoryClient |
software | healthy | tests/doc-sync.test.ts:createMockMemoryClient |
makeSampleDoc |
software | healthy | tests/doc-sync.test.ts:makeSampleDoc |
setup |
software | healthy | tests/doc-sync.test.ts:setup |
makeExec |
software | healthy | tests/persistent-executor-burst.test.ts:makeExec |
createLogger |
software | healthy | tests/peer-manager.test.ts:createLogger |
createLogger |
software | healthy | tests/skill-hub-store.test.ts:createLogger |
createStore |
software | healthy | tests/skill-hub-store.test.ts:createStore |
tempDir |
software | healthy | tests/skills-installer.test.ts:tempDir |
createLogger |
software | healthy | tests/sync-store.test.ts:createLogger |
setup |
software | healthy | tests/sync-store.test.ts:setup |
buildHandler |
software | healthy | tests/command-handler-help.test.ts:buildHandler |
helpMessage |
software | healthy | tests/command-handler-help.test.ts:helpMessage |
generateId |
software | healthy | web/src/store.ts:generateId |
persistSessions |
software | healthy | web/src/store.ts:persistSessions |
loadSessions |
software | healthy | web/src/store.ts:loadSessions |
App |
software | healthy | web/src/App.tsx:App |
requestNotificationPermission |
software | healthy | web/src/utils/notifications.ts:requestNotificationPermission |
notifyTaskComplete |
software | healthy | web/src/utils/notifications.ts:notifyTaskComplete |
onFocus |
software | healthy | web/src/utils/notifications.ts:onFocus |
formatDuration |
software | healthy | web/src/components/TeamDashboard.tsx:formatDuration |
formatCost |
software | healthy | web/src/components/TeamDashboard.tsx:formatCost |
TeamDashboard |
software | healthy | web/src/components/TeamDashboard.tsx:TeamDashboard |
BotManageDialog |
software | healthy | web/src/components/BotManageDialog.tsx:BotManageDialog |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
mkdocs.yml |
software | healthy | mkdocs.yml |
bots.example.json |
software | healthy | bots.example.json |
README.md |
software | healthy | README.md |
CLAUDE.md |
software | healthy | CLAUDE.md |
install.sh |
software | healthy | install.sh |
package.json |
software | healthy | package.json |
CONTRIBUTING.md |
software | healthy | CONTRIBUTING.md |
setup.sh |
software | healthy | setup.sh |
Dockerfile |
software | healthy | Dockerfile |
package-lock.json |
software | healthy | package-lock.json |
uninstall.sh |
software | healthy | uninstall.sh |
.env.example |
software | healthy | .env.example |
eslint.config.js |
software | warning | eslint.config.js |
tsconfig.json |
software | healthy | tsconfig.json |
README_EN.md |
software | healthy | README_EN.md |
CHANGELOG.md |
software | healthy | CHANGELOG.md |
docker-compose.yml |
software | healthy | docker-compose.yml |
vitest.config.ts |
software | warning | vitest.config.ts |
memory-server.test.ts |
software | healthy | tests/memory-server.test.ts |
command-handler-stop.test.ts |
software | healthy | tests/command-handler-stop.test.ts |
cron-utils.test.ts |
software | warning | tests/cron-utils.test.ts |
i18n.test.ts |
software | warning | tests/i18n.test.ts |
codex-build-args.test.ts |
software | warning | tests/codex-build-args.test.ts |
between-turn-question.test.ts |
software | healthy | tests/between-turn-question.test.ts |
cost-tracker.test.ts |
software | warning | tests/cost-tracker.test.ts |
stream-processor.test.ts |
software | healthy | tests/stream-processor.test.ts |
executor-registry-race.test.ts |
software | healthy | tests/executor-registry-race.test.ts |
apply-1m-context-settings.test.ts |
software | warning | tests/apply-1m-context-settings.test.ts |
feishu-sender-adapter.test.ts |
software | healthy | tests/feishu-sender-adapter.test.ts |
session-manager.test.ts |
software | healthy | tests/session-manager.test.ts |
metrics.test.ts |
software | warning | tests/metrics.test.ts |
exit-plan-mode-auto-approve.test.ts |
software | healthy | tests/exit-plan-mode-auto-approve.test.ts |
codex-jsonl-translator.test.ts |
software | warning | tests/codex-jsonl-translator.test.ts |
output-handler.test.ts |
software | healthy | tests/output-handler.test.ts |
task-scheduler-recurring.test.ts |
software | healthy | tests/task-scheduler-recurring.test.ts |
card-builder-v2.test.ts |
software | healthy | tests/card-builder-v2.test.ts |
outputs-manager.test.ts |
software | warning | tests/outputs-manager.test.ts |
card-builder.test.ts |
software | warning | tests/card-builder.test.ts |
audit-logger.test.ts |
software | healthy | tests/audit-logger.test.ts |
message-bridge.test.ts |
software | healthy | tests/message-bridge.test.ts |
rate-limiter.test.ts |
software | warning | tests/rate-limiter.test.ts |
markdown-to-blocks.test.ts |
software | warning | tests/markdown-to-blocks.test.ts |
doc-sync.test.ts |
software | healthy | tests/doc-sync.test.ts |
persistent-executor-burst.test.ts |
software | healthy | tests/persistent-executor-burst.test.ts |
peer-manager.test.ts |
software | healthy | tests/peer-manager.test.ts |
skill-hub-store.test.ts |
software | healthy | tests/skill-hub-store.test.ts |
skills-installer.test.ts |
software | healthy | tests/skills-installer.test.ts |
sync-store.test.ts |
software | healthy | tests/sync-store.test.ts |
command-handler-help.test.ts |
software | healthy | tests/command-handler-help.test.ts |
about.md |
software | healthy | docs/about.md |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
tests |
software | healthy | tests |
docs |
software | healthy | docs |
reference |
software | healthy | docs/reference |
usage |
software | healthy | docs/usage |
development |
software | healthy | docs/development |
internal |
software | healthy | docs/internal |
configuration |
software | healthy | docs/configuration |
deployment |
software | healthy | docs/deployment |
getting-started |
software | healthy | docs/getting-started |
landing |
software | healthy | docs/landing |
concepts |
software | healthy | docs/concepts |
features |
software | healthy | docs/features |
web |
software | healthy | web |
public |
software | healthy | web/public |
src |
software | healthy | web/src |
utils |
software | healthy | web/src/utils |
components |
software | healthy | web/src/components |
team |
software | healthy | web/src/components/team |
chat |
software | healthy | web/src/components/chat |
office |
software | healthy | web/src/components/office |
ui |
software | healthy | web/src/components/office/ui |
engine |
software | healthy | web/src/components/office/engine |
canvas |
software | healthy | web/src/components/office/canvas |
hooks |
software | healthy | web/src/hooks |
spike |
software | healthy | spike |
.github |
software | healthy | .github |
ISSUE_TEMPLATE |
software | healthy | .github/ISSUE_TEMPLATE |
workflows |
software | healthy | .github/workflows |
src |
software | healthy | src |
feishu |
software | healthy | src/feishu |
engines |
software | healthy | src/engines |
kimi |
software | healthy | src/engines/kimi |
codex |
software | healthy | src/engines/codex |
claude |
software | healthy | src/engines/claude |
sync |
software | healthy | src/sync |
api |
software | healthy | src/api |
routes |
software | healthy | src/api/routes |
telegram |
software | healthy | src/telegram |
utils |
software | healthy | src/utils |
workspace |
software | healthy | src/workspace |
web |
software | healthy | src/web |
memory |
software | healthy | src/memory |
static |
software | healthy | src/memory/static |
skill |
software | healthy | src/memory/skill |
skills |
software | healthy | src/skills |
skill-hub |
software | healthy | src/skills/skill-hub |
metaskill |
software | healthy | src/skills/metaskill |
flows |
software | healthy | src/skills/metaskill/flows |
voice |
software | healthy | src/skills/voice |
metabot |
software | healthy | src/skills/metabot |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
PCMProcessor |
software | healthy | web/public/pcm-processor.js:PCMProcessor |
ErrorBoundary |
software | healthy | web/src/components/ErrorBoundary.tsx:ErrorBoundary |
MessageSender |
software | healthy | src/feishu/message-sender.ts:MessageSender |
FeishuSenderAdapter |
software | healthy | src/feishu/feishu-sender-adapter.ts:FeishuSenderAdapter |
used |
software | healthy | src/engines/types.ts:used |
KimiExecutor |
software | healthy | src/engines/kimi/executor.ts:KimiExecutor |
KimiEngine |
software | healthy | src/engines/kimi/index.ts:KimiEngine |
CodexExecutor |
software | healthy | src/engines/codex/executor.ts:CodexExecutor |
CodexEngine |
software | healthy | src/engines/codex/index.ts:CodexEngine |
ClaudeExecutor |
software | healthy | src/engines/claude/executor.ts:ClaudeExecutor |
ClaudeEngine |
software | healthy | src/engines/claude/index.ts:ClaudeEngine |
StreamProcessor |
software | healthy | src/engines/claude/stream-processor.ts:StreamProcessor |
SessionManager |
software | healthy | src/engines/claude/session-manager.ts:SessionManager |
ExecutorRegistry |
software | healthy | src/engines/claude/executor-registry.ts:ExecutorRegistry |
PersistentClaudeExecutor |
software | healthy | src/engines/claude/persistent-executor.ts:PersistentClaudeE… |
SyncStore |
software | healthy | src/sync/sync-store.ts:SyncStore |
DocSync |
software | healthy | src/sync/doc-sync.ts:DocSync |
ByteBuf |
software | healthy | src/api/rtc-token.ts:ByteBuf |
BudgetManager |
software | healthy | src/api/budget-manager.ts:BudgetManager |
IntentRouter |
software | healthy | src/api/intent-router.ts:IntentRouter |
RtcVoiceChatService |
software | healthy | src/api/rtc-voice-chat.ts:RtcVoiceChatService |
ActivityStore |
software | healthy | src/api/activity-store.ts:ActivityStore |
TeamManager |
software | healthy | src/api/team-manager.ts:TeamManager |
AsyncTaskStore |
software | healthy | src/api/async-task-store.ts:AsyncTaskStore |
PeerManager |
software | healthy | src/api/peer-manager.ts:PeerManager |
SkillHubStore |
software | healthy | src/api/skill-hub-store.ts:SkillHubStore |
VoiceIdentityStore |
software | healthy | src/api/voice-identity.ts:VoiceIdentityStore |
VoiceMeetingService |
software | healthy | src/api/voice-meeting.ts:VoiceMeetingService |
BotRegistry |
software | healthy | src/api/bot-registry.ts:BotRegistry |
StreamingASRSession |
software | healthy | src/api/streaming-asr.ts:StreamingASRSession |
CircuitBreaker |
software | healthy | src/api/circuit-breaker.ts:CircuitBreaker |
PayloadTooLargeError |
software | healthy | src/api/routes/helpers.ts:PayloadTooLargeError |
TelegramSender |
software | healthy | src/telegram/telegram-sender.ts:TelegramSender |
AuditLogger |
software | healthy | src/utils/audit-logger.ts:AuditLogger |
CostTracker |
software | healthy | src/utils/cost-tracker.ts:CostTracker |
MetricsCollector |
software | healthy | src/utils/metrics.ts:MetricsCollector |
AsyncQueue |
software | healthy | src/utils/async-queue.ts:AsyncQueue |
NullSender |
software | healthy | src/web/null-sender.ts:NullSender |
GroupManager |
software | healthy | src/web/group-manager.ts:GroupManager |
ChatSubscriptionManager |
software | healthy | src/web/chat-subscriptions.ts:ChatSubscriptionManager |
MemoryClient |
software | healthy | src/memory/memory-client.ts:MemoryClient |
MemoryEventBus |
software | healthy | src/memory/memory-events.ts:MemoryEventBus |
PayloadTooLargeError |
software | healthy | src/memory/memory-server.ts:PayloadTooLargeError |
MemoryStorage |
software | healthy | src/memory/memory-storage.ts:MemoryStorage |
WechatSender |
software | healthy | src/wechat/wechat-sender.ts:WechatSender |
WechatClient |
software | healthy | src/wechat/wechat-client.ts:WechatClient |
SessionRegistry |
software | healthy | src/session/session-registry.ts:SessionRegistry |
OutputsManager |
software | healthy | src/bridge/outputs-manager.ts:OutputsManager |
OutputHandler |
software | healthy | src/bridge/output-handler.ts:OutputHandler |
CommandHandler |
software | healthy | src/bridge/command-handler.ts:CommandHandler |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
/ |
frontend | healthy | web/src/App.tsx |
/memory |
frontend | healthy | web/src/App.tsx |
/voice |
frontend | healthy | web/src/App.tsx |
/settings |
frontend | healthy | web/src/App.tsx |
/team |
frontend | healthy | web/src/App.tsx |
* |
frontend | healthy | web/src/App.tsx |
/Test Doc |
frontend | healthy | tests/doc-sync.test.ts |
/Research |
frontend | healthy | tests/doc-sync.test.ts |
| Label | Layer | Status | Path |
|---|---|---|---|
auth::src/engines/claude/executor.ts |
security | healthy | src/engines/claude/executor.ts |
auth::install.sh |
security | healthy | install.sh |
auth::src/engines/kimi/executor.ts |
security | healthy | src/engines/kimi/executor.ts |
auth::src/engines/claude/persistent-executor.ts |
security | healthy | src/engines/claude/persistent-executor.ts |
| Label | Layer | Status | Path |
|---|---|---|---|
check |
cicd | healthy | .github/workflows/ci.yml |
build |
cicd | healthy | .github/workflows/ci.yml |
deploy |
cicd | healthy | .github/workflows/docs.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
port:9100 |
network | healthy | Dockerfile |
port:5173 |
network | healthy | web/vite.config.ts |
| Label | Layer | Status | Path |
|---|---|---|---|
image::Dockerfile |
hardware | healthy | Dockerfile |
metabot |
hardware | healthy | docker-compose.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
gha::ci |
cicd | healthy | .github/workflows/ci.yml |
gha::docs |
cicd | healthy | .github/workflows/docs.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
repobility-clone-64r5aljo |
software | healthy | /tmp/repobility-clone-64r5aljo |
| Label | Layer | Status | Path |
|---|---|---|---|
sqlite |
data | healthy | .env.example |
| Label | Layer | Status | Path |
|---|---|---|---|
127.0.0.1 |
network | healthy | .env.example |
| Label | Layer | Status | Path |
|---|---|---|---|
nginx |
network | healthy | src/sync/markdown-to-blocks.ts |
This page is publicly accessible at:
https://repobility.com/scan/a731985b-1d29-4908-8399-00852d6c06f2/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/a731985b-1d29-4908-8399-00852d6c06f2/
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.