https://github.com/shuitian23-bot/lexiang-workbench
· scanned 2026-06-16 00:12 UTC (2 months, 2 weeks ago)
305 raw signals (0 security + 305 graph)
Last scanned 2 months, 2 weeks ago · v1 · 303 actionable findings from 1 signal source. 2 repeated signals grouped for readability. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.
All 2519 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 |
|---|---|---|---|
siteWhereClause |
software | healthy | server.js:siteWhereClause |
parseProductSpecs |
software | healthy | server.js:parseProductSpecs |
normalizeSpuName |
software | healthy | server.js:normalizeSpuName |
getSpuKey |
software | healthy | server.js:getSpuKey |
buildPromotionTags |
software | healthy | server.js:buildPromotionTags |
collapseProductsToSpu |
software | healthy | server.js:collapseProductsToSpu |
classifySite |
software | healthy | server.js:classifySite |
reason |
software | healthy | server.js:reason |
normalizeLenovoUrl |
software | healthy | server.js:normalizeLenovoUrl |
canonicalProductUrl |
software | healthy | server.js:canonicalProductUrl |
items |
software | healthy | server.js:items |
clip |
software | healthy | server.js:clip |
_sendIndexNoCache |
software | healthy | server.js:_sendIndexNoCache |
gracefulShutdown |
software | healthy | server.js:gracefulShutdown |
checkAndExit |
software | healthy | server.js:checkAndExit |
detect_cat |
software | healthy | scripts/batch_biz_wiki.py:49 |
ensure_dirs |
software | healthy | scripts/batch_biz_wiki.py:61 |
load_progress |
software | healthy | scripts/batch_biz_wiki.py:65 |
save_progress |
software | healthy | scripts/batch_biz_wiki.py:71 |
step_crawl |
software | healthy | scripts/batch_biz_wiki.py:76 |
fetch_cms_images |
software | healthy | scripts/batch_biz_wiki.py:146 |
fetch_product_meta |
software | healthy | scripts/batch_biz_wiki.py:158 |
ocr_image |
software | healthy | scripts/batch_biz_wiki.py:177 |
step_fetch |
software | healthy | scripts/batch_biz_wiki.py:202 |
call_qwen |
software | healthy | scripts/batch_biz_wiki.py:286 |
step_extract |
software | healthy | scripts/batch_biz_wiki.py:313 |
parse_content_and_qa |
software | healthy | scripts/batch_biz_wiki.py:360 |
gen_faq_html |
software | healthy | scripts/batch_biz_wiki.py:379 |
gen_faq_schema |
software | healthy | scripts/batch_biz_wiki.py:389 |
gen_page_html |
software | healthy | scripts/batch_biz_wiki.py:397 |
step_generate |
software | healthy | scripts/batch_biz_wiki.py:584 |
show_status |
software | healthy | scripts/batch_biz_wiki.py:641 |
fetch_page |
software | dead | scripts/crawl_brand_news.py:12 |
main |
software | healthy | scripts/crawl_brand_news.py:66 |
fetchDetail |
software | healthy | scripts/fix_short_batch.js:fetchDetail |
htmlToText |
software | healthy | scripts/fix_short_batch.js:htmlToText |
withTimeout |
software | healthy | scripts/weekly_refresh.js:withTimeout |
step |
software | healthy | scripts/weekly_refresh.js:step |
d |
software | healthy | scripts/weekly_refresh.js:d |
msg |
software | healthy | scripts/weekly_refresh.js:msg |
pick |
software | healthy | scripts/weekly_refresh.js:pick |
m |
software | healthy | scripts/weekly_refresh.js:m |
sendFeishu |
software | healthy | scripts/weekly_refresh.js:sendFeishu |
run |
software | healthy | scripts/weekly_refresh.js:run |
extractPage |
software | healthy | scripts/crawl_biz_playwright.js:extractPage |
main |
software | healthy | scripts/crawl_biz_playwright.js:main |
call_api |
software | healthy | scripts/p1_add_warnings.py:27 |
get_p1_records |
software | healthy | scripts/p1_add_warnings.py:59 |
process_batch |
software | healthy | scripts/p1_add_warnings.py:74 |
main |
software | healthy | scripts/p1_add_warnings.py:114 |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
ecosystem.config.js |
software | healthy | ecosystem.config.js |
PRD_产品版.md |
software | healthy | PRD_产品版.md |
PRD_产品版_v2.md |
software | healthy | PRD_产品版_v2.md |
pnpm-lock.yaml |
software | healthy | pnpm-lock.yaml |
CLAUDE.md |
software | healthy | CLAUDE.md |
package.json |
software | healthy | package.json |
package-lock.json |
software | healthy | package-lock.json |
pnpm-workspace.yaml |
software | healthy | pnpm-workspace.yaml |
server.js |
software | healthy | server.js |
PRD.md |
software | healthy | PRD.md |
AGENTS.md |
software | healthy | AGENTS.md |
lxhint.json |
software | healthy | config/lxhint.json |
seckill.json |
software | healthy | config/seckill.json |
guan-workflow.md |
software | healthy | docs/guan-workflow.md |
gap-analysis-20260611.md |
software | healthy | docs/gap-analysis-20260611.md |
portal-workbench-permission-design.md |
software | healthy | docs/portal-workbench-permission-design.md |
iteration-plan-20260611.md |
software | healthy | docs/iteration-plan-20260611.md |
iteration-plan-20260612.md |
software | healthy | docs/iteration-plan-20260612.md |
github-collab-guide.md |
software | healthy | docs/github-collab-guide.md |
guan-jthl.html |
software | healthy | docs/guan-jthl.html |
batch_biz_wiki.py |
software | healthy | scripts/batch_biz_wiki.py |
crawl_brand_news.py |
software | healthy | scripts/crawl_brand_news.py |
fix_short_batch.js |
software | healthy | scripts/fix_short_batch.js |
weekly_refresh.js |
software | healthy | scripts/weekly_refresh.js |
crawl_biz_playwright.js |
software | healthy | scripts/crawl_biz_playwright.js |
healthcheck.sh |
software | healthy | scripts/healthcheck.sh |
p1_add_warnings.py |
software | healthy | scripts/p1_add_warnings.py |
enrich_brand_news.py |
software | healthy | scripts/enrich_brand_news.py |
gen_qa.js |
software | healthy | scripts/gen_qa.js |
gen_qa_full.js |
software | healthy | scripts/gen_qa_full.js |
import_from_openapi.js |
software | healthy | scripts/import_from_openapi.js |
ocr_image_docs.js |
software | healthy | scripts/ocr_image_docs.js |
backup.sh |
software | healthy | scripts/backup.sh |
gen_wiki_full.py |
software | healthy | scripts/gen_wiki_full.py |
crawl_brand_full.py |
software | healthy | scripts/crawl_brand_full.py |
deploy.sh |
software | healthy | scripts/deploy.sh |
auto-checkpoint.sh |
software | healthy | scripts/auto-checkpoint.sh |
import_excel_products.js |
software | healthy | scripts/import_excel_products.js |
pointer_eval.js |
software | healthy | scripts/pointer_eval.js |
backfill_links.js |
software | healthy | scripts/backfill_links.js |
gen_wiki.py |
software | healthy | scripts/gen_wiki.py |
crawl_biz.js |
software | healthy | scripts/crawl_biz.js |
select_missing_specs.py |
software | healthy | scripts/select_missing_specs.py |
rechunk_updated.js |
software | healthy | scripts/rechunk_updated.js |
gen_qa_claude.js |
software | healthy | scripts/gen_qa_claude.js |
test_qa_v2.js |
software | healthy | scripts/test_qa_v2.js |
gen_qa_v2.js |
software | healthy | scripts/gen_qa_v2.js |
auto-changelog.js |
software | healthy | scripts/auto-changelog.js |
regen_qa_guides.js |
software | healthy | scripts/regen_qa_guides.js |
crawl_item_pages.js |
software | healthy | scripts/crawl_item_pages.js |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
USE /health |
api | healthy | server.js |
GET /metrics |
api | healthy | server.js |
USE /api/auth |
api | healthy | server.js |
USE /api/chat |
api | healthy | server.js |
USE /api/knowledge |
api | healthy | server.js |
POST /api/admin/login |
api | healthy | server.js |
USE /api/admin |
api | healthy | server.js |
USE /api/harness |
api | healthy | server.js |
USE /api/uploader |
api | healthy | server.js |
USE /api/log |
api | healthy | server.js |
USE /api/stores |
api | healthy | server.js |
USE /api/leai |
api | healthy | server.js |
USE /api/lenovo |
api | healthy | server.js |
USE /api/product |
api | healthy | server.js |
USE /api/pointer |
api | healthy | server.js |
USE /api/webhook |
api | healthy | server.js |
USE /api/geo-dashboard |
api | healthy | server.js |
USE /api/pipeline |
api | healthy | server.js |
USE /api/supplier |
api | healthy | server.js |
USE /api/site |
api | healthy | server.js |
USE / |
api | healthy | server.js |
GET /api/products |
api | healthy | server.js |
GET /api/products/:sku |
api | healthy | server.js |
GET /api/products/:sku/reason |
api | healthy | server.js |
GET /api/resolve-link |
api | healthy | server.js |
GET /api/preview |
api | healthy | server.js |
GET /admin |
api | healthy | server.js |
GET /admin/*path |
api | healthy | server.js |
GET /share/:token |
api | healthy | server.js |
GET /api/products/:sku/variants |
api | healthy | server.js |
GET /api/config/seckill |
api | healthy | server.js |
GET /api/leai2/faq |
api | healthy | server.js |
POST /api/leads |
api | healthy | server.js |
GET /api/config/lxhint |
api | healthy | server.js |
GET /*path |
api | healthy | server.js |
GET /sse/connect |
api | healthy | routes/harness.js |
GET /sse/heartbeat |
api | healthy | routes/harness.js |
POST /sse/say |
api | healthy | routes/harness.js |
POST /invoke |
api | healthy | routes/harness.js |
GET /skills |
api | healthy | routes/harness.js |
GET /skills/grouped |
api | healthy | routes/harness.js |
GET /schema/:name |
api | healthy | routes/harness.js |
GET /menu |
api | healthy | routes/harness.js |
GET /roles |
api | healthy | routes/harness.js |
POST /roles |
api | healthy | routes/harness.js |
PUT /roles/:id |
api | healthy | routes/harness.js |
DELETE /roles/:id |
api | healthy | routes/harness.js |
GET /user-roles/:userId |
api | healthy | routes/harness.js |
PUT /user-roles/:userId |
api | healthy | routes/harness.js |
POST /chat |
api | healthy | routes/harness.js |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
config |
software | healthy | config |
docs |
software | healthy | docs |
scripts |
software | healthy | scripts |
routes |
software | healthy | routes |
.claude |
software | healthy | .claude |
skills |
software | healthy | .claude/skills |
lexiang-deploy |
software | healthy | .claude/skills/lexiang-deploy |
lexiang-ai-flow |
software | healthy | .claude/skills/lexiang-ai-flow |
lexiang-dev |
software | healthy | .claude/skills/lexiang-dev |
lexiang-changelog |
software | healthy | .claude/skills/lexiang-changelog |
lenovo-leai-pc-design |
software | healthy | .claude/skills/lenovo-leai-pc-design |
references |
software | healthy | .claude/skills/lenovo-leai-pc-design/references |
assets |
software | healthy | .claude/skills/lenovo-leai-pc-design/assets |
templates |
software | healthy | .claude/skills/lenovo-leai-pc-design/assets/templates |
agents |
software | healthy | .claude/skills/lenovo-leai-pc-design/agents |
db |
software | healthy | db |
migrations |
software | healthy | db/migrations |
core |
software | healthy | core |
sub_agents |
software | healthy | core/sub_agents |
skills |
software | healthy | skills |
public |
software | healthy | public |
js |
software | healthy | public/js |
css |
software | healthy | public/css |
admin |
software | healthy | public/admin |
assets |
software | healthy | public/admin/assets |
knowledge |
software | healthy | knowledge |
| Label | Layer | Status | Path |
|---|---|---|---|
/ |
frontend | healthy | server.js |
/api/coding/v3/chat/completions |
frontend | healthy | server.js |
/api/coding/v3/models |
frontend | healthy | routes/health.js |
/v7.0/search?q= |
frontend | healthy | skills/web_search.js |
/html/ |
frontend | healthy | skills/web_search.js |
/compatible-mode/v1/chat/completions |
frontend | healthy | knowledge/graph_rag.js |
/api/v1/services/rerank/text-rerank/text-rerank |
frontend | healthy | knowledge/reranker.js |
/api/v1/services/embeddings/text-embedding/text-embedding |
frontend | healthy | knowledge/embed.js |
| Label | Layer | Status | Path |
|---|---|---|---|
openai_or_anthropic_key::scripts/batch_biz_wiki.py |
security | healthy | scripts/batch_biz_wiki.py |
openai_or_anthropic_key::scripts/p1_add_warnings.py |
security | healthy | scripts/p1_add_warnings.py |
generic_api_key::scripts/p1_add_warnings.py |
security | healthy | scripts/p1_add_warnings.py |
password_literal::routes/geo-dashboard.js |
security | healthy | routes/geo-dashboard.js |
| Label | Layer | Status | Path |
|---|---|---|---|
auth::public/admin/workbench-data.js |
security | healthy | public/admin/workbench-data.js |
auth::public/admin/index-legacy.html |
security | healthy | public/admin/index-legacy.html |
auth::public/admin/demo-mock.js |
security | healthy | public/admin/demo-mock.js |
auth::routes/lenovo-proxy.js |
security | healthy | routes/lenovo-proxy.js |
| Label | Layer | Status | Path |
|---|---|---|---|
HarnessRegistry |
software | healthy | core/skill-registry.js:HarnessRegistry |
MCPClient |
software | healthy | core/mcp_client.js:MCPClient |
PreviewHandler |
software | healthy | public/admin/local-preview-server.py:54 |
| Label | Layer | Status | Path |
|---|---|---|---|
120.0.0.0 |
network | healthy | server.js |
127.0.0.1 |
network | healthy | scripts/pointer_eval.js |
8.8.8.8 |
network | healthy | public/admin/local-preview-server.py |
| Label | Layer | Status | Path |
|---|---|---|---|
repobility-clone-_sqgxo3x |
software | healthy | /tmp/repobility-clone-_sqgxo3x |
| Label | Layer | Status | Path |
|---|---|---|---|
sqlite |
data | healthy | CLAUDE.md |
| Label | Layer | Status | Path |
|---|---|---|---|
2026-05-19-choice-protocol.sql |
data | healthy | db/migrations/2026-05-19-choice-protocol.sql |
| Label | Layer | Status | Path |
|---|---|---|---|
port:3001 |
network | healthy | ecosystem.config.js |
| Label | Layer | Status | Path |
|---|---|---|---|
nginx |
network | healthy | server.js |
| Label | Layer | Status | Path |
|---|---|---|---|
gpu (detected) |
hardware | healthy | scripts/gen_wiki_full.py |
This page is publicly accessible at:
https://repobility.com/scan/ce3ddbe8-dbc6-48f8-93b4-f0b5b6382a05/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/ce3ddbe8-dbc6-48f8-93b4-f0b5b6382a05/
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.