https://github.com/thwhkfcbsv-max/batispot
· scanned 2026-06-16 00:36 UTC (2 months, 2 weeks ago)
154 raw signals (0 security + 154 graph)
Last scanned 2 months, 2 weeks ago · v1 · 141 actionable findings from 1 signal source. 13 repeated signals grouped for readability. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.
All 3254 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 |
|---|---|---|---|
prix-peintre-maisons-laffitte.html |
software | healthy | prix-peintre-maisons-laffitte.html |
prix-peintre-neuilly-sur-seine.html |
software | healthy | prix-peintre-neuilly-sur-seine.html |
prix-electricien-sceaux.html |
software | healthy | prix-electricien-sceaux.html |
prix-carreleur-le-bourget.html |
software | healthy | prix-carreleur-le-bourget.html |
prix-peintre-sceaux.html |
software | healthy | prix-peintre-sceaux.html |
prix-carreleur-stains.html |
software | healthy | prix-carreleur-stains.html |
dpe-ermont.html |
software | healthy | dpe-ermont.html |
prix-macon-pantin.html |
software | healthy | prix-macon-pantin.html |
prix-plombier-les-lilas.html |
software | healthy | prix-plombier-les-lilas.html |
prix-carreleur-pantin.html |
software | healthy | prix-carreleur-pantin.html |
dpe-creteil.html |
software | healthy | dpe-creteil.html |
prix-serrurier-asnieres-sur-seine.html |
software | healthy | prix-serrurier-asnieres-sur-seine.html |
prix-peintre-la-garenne-colombes.html |
software | healthy | prix-peintre-la-garenne-colombes.html |
prix-plombier-gennevilliers.html |
software | healthy | prix-plombier-gennevilliers.html |
devis-travaux-comprendre-comparer.html |
software | healthy | devis-travaux-comprendre-comparer.html |
prix-plombier-meaux.html |
software | healthy | prix-plombier-meaux.html |
prix-menuisier-sannois.html |
software | healthy | prix-menuisier-sannois.html |
prix-macon-antony.html |
software | healthy | prix-macon-antony.html |
prix-electricien-bry-sur-marne.html |
software | healthy | prix-electricien-bry-sur-marne.html |
renovation-immeuble-rapport-idf.html |
software | healthy | renovation-immeuble-rapport-idf.html |
prix-chauffagiste-chelles.html |
software | healthy | prix-chauffagiste-chelles.html |
prix-peintre-charenton-le-pont.html |
software | healthy | prix-peintre-charenton-le-pont.html |
prix-electricien-maisons-alfort.html |
software | healthy | prix-electricien-maisons-alfort.html |
prix-chauffagiste-antony.html |
software | healthy | prix-chauffagiste-antony.html |
prix-peintre-courbevoie.html |
software | healthy | prix-peintre-courbevoie.html |
syndic.html |
software | healthy | syndic.html |
prix-macon-montreuil.html |
software | healthy | prix-macon-montreuil.html |
prix-plombier-bagneux.html |
software | healthy | prix-plombier-bagneux.html |
audit-lighthouse.sh |
software | healthy | audit-lighthouse.sh |
prix-chauffagiste-villiers-le-bel.html |
software | healthy | prix-chauffagiste-villiers-le-bel.html |
prix-menuisier-livry-gargan.html |
software | healthy | prix-menuisier-livry-gargan.html |
plombier-paris-15e.html |
software | healthy | plombier-paris-15e.html |
prix-menuisier-meudon.html |
software | healthy | prix-menuisier-meudon.html |
prix-chauffagiste-franconville.html |
software | healthy | prix-chauffagiste-franconville.html |
prix-electricien-montreuil.html |
software | healthy | prix-electricien-montreuil.html |
prix-carreleur-montreuil.html |
software | healthy | prix-carreleur-montreuil.html |
prix-serrurier-saint-maur-des-fosses.html |
software | healthy | prix-serrurier-saint-maur-des-fosses.html |
prix-plombier-cachan.html |
software | healthy | prix-plombier-cachan.html |
prix-chauffagiste-thiais.html |
software | healthy | prix-chauffagiste-thiais.html |
dpe-neuilly-sur-seine.html |
software | healthy | dpe-neuilly-sur-seine.html |
plombier-urgence-paris-nuit.html |
software | healthy | plombier-urgence-paris-nuit.html |
prix-electricien-franconville.html |
software | healthy | prix-electricien-franconville.html |
prix-electricien-villiers-le-bel.html |
software | healthy | prix-electricien-villiers-le-bel.html |
prix-menuisier-pontault-combault.html |
software | healthy | prix-menuisier-pontault-combault.html |
prix-peintre-pantin.html |
software | healthy | prix-peintre-pantin.html |
prix-carreleur-poissy.html |
software | healthy | prix-carreleur-poissy.html |
guide-renovation-electrique-complete.html |
software | healthy | guide-renovation-electrique-complete.html |
prix-plombier-champigny-sur-marne.html |
software | healthy | prix-plombier-champigny-sur-marne.html |
dpe-villejuif.html |
software | healthy | dpe-villejuif.html |
prix-peintre-nogent-sur-marne.html |
software | healthy | prix-peintre-nogent-sur-marne.html |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
q |
software | healthy | chat-widget.js:q |
updateContext |
software | healthy | chat-widget.js:updateContext |
getStepById |
software | healthy | chat-widget.js:getStepById |
getNextStep |
software | healthy | chat-widget.js:getNextStep |
injectCSS |
software | healthy | chat-widget.js:injectCSS |
createWidget |
software | healthy | chat-widget.js:createWidget |
addMsg |
software | healthy | chat-widget.js:addMsg |
addSuggestions |
software | healthy | chat-widget.js:addSuggestions |
sendNotif |
software | healthy | chat-widget.js:sendNotif |
botRespond |
software | healthy | chat-widget.js:botRespond |
handleUserInput |
software | healthy | chat-widget.js:handleUserInput |
handleSend |
software | healthy | chat-widget.js:handleSend |
openChat |
software | healthy | chat-widget.js:openChat |
closeChat |
software | healthy | chat-widget.js:closeChat |
priority_for |
software | healthy | _generate_sitemap.py:21 |
submit_urls |
software | healthy | indexnow_ping.py:35 |
log_ping |
software | healthy | indexnow_ping.py:90 |
get_all_blog_urls |
software | healthy | indexnow_ping.py:103 |
get_new_urls |
software | healthy | indexnow_ping.py:118 |
get_sitemap_urls |
software | healthy | indexnow_ping.py:135 |
main |
software | healthy | indexnow_ping.py:146 |
validateDevis |
software | healthy | server.js:validateDevis |
validatePartenaire |
software | healthy | server.js:validatePartenaire |
computeMatchScore |
software | healthy | server.js:computeMatchScore |
travaux |
software | healthy | server.js:travaux |
metier |
software | healthy | server.js:metier |
fetch_entreprises |
software | healthy | email-agent/scraper.py:75 |
parse_results |
software | healthy | email-agent/scraper.py:95 |
load_existing |
software | healthy | email-agent/scraper.py:132 |
save_leads |
software | healthy | email-agent/scraper.py:143 |
run |
software | healthy | email-agent/scraper.py:158 |
log |
software | healthy | email-agent/scraper_pj_syndics.py:62 |
load_progress |
software | healthy | email-agent/scraper_pj_syndics.py:73 |
save_progress |
software | healthy | email-agent/scraper_pj_syndics.py:83 |
normalize_phone |
software | healthy | email-agent/scraper_pj_syndics.py:88 |
is_good_email |
software | healthy | email-agent/scraper_pj_syndics.py:99 |
best_email |
software | healthy | email-agent/scraper_pj_syndics.py:111 |
read_existing |
software | healthy | email-agent/scraper_pj_syndics.py:122 |
write_csv |
software | healthy | email-agent/scraper_pj_syndics.py:129 |
normalize_name |
software | healthy | email-agent/scraper_pj_syndics.py:136 |
scrape_pro_detail |
software | healthy | email-agent/scraper_pj_syndics.py:140 |
scrape_pj_page |
software | healthy | email-agent/scraper_pj_syndics.py:192 |
merge_lead |
software | healthy | email-agent/scraper_pj_syndics.py:282 |
main |
software | healthy | email-agent/scraper_pj_syndics.py:305 |
_load_vapi_config |
software | healthy | email-agent/vapi_cold_call.py:43 |
vapi_request |
software | healthy | email-agent/vapi_cold_call.py:187 |
create_assistant |
software | healthy | email-agent/vapi_cold_call.py:216 |
load_targets |
software | healthy | email-agent/vapi_cold_call.py:257 |
already_called |
software | healthy | email-agent/vapi_cold_call.py:277 |
log_call |
software | healthy | email-agent/vapi_cold_call.py:287 |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
email-agent |
software | healthy | email-agent |
vapi |
software | healthy | email-agent/vapi |
blog |
software | healthy | blog |
functions |
software | healthy | functions |
api |
software | healthy | functions/api |
_drafts |
software | healthy | _drafts |
blog-pro |
software | healthy | blog-pro |
js |
software | healthy | js |
audits |
software | healthy | audits |
scripts |
software | healthy | scripts |
app |
software | healthy | app |
showcase |
software | healthy | app/showcase |
js |
software | healthy | app/js |
css |
software | healthy | app/css |
supabase |
software | healthy | app/supabase |
functions |
software | healthy | app/supabase/functions |
notify-artisans |
software | healthy | app/supabase/functions/notify-artisans |
stripe-webhook |
software | healthy | app/supabase/functions/stripe-webhook |
notify-admin |
software | healthy | app/supabase/functions/notify-admin |
notify-client-received |
software | healthy | app/supabase/functions/notify-client-received |
ai-devis |
software | healthy | app/supabase/functions/ai-devis |
notify-client |
software | healthy | app/supabase/functions/notify-client |
templates |
software | healthy | app/supabase/templates |
marketing |
software | healthy | marketing |
reports |
software | healthy | marketing/reports |
social |
software | healthy | social |
claude_design_export |
software | healthy | social/claude_design_export |
v3_scraped |
software | healthy | social/claude_design_export/v3_scraped |
css |
software | healthy | social/claude_design_export/v3_scraped/css |
BatiSpot_v2_extracted |
software | healthy | social/claude_design_export/BatiSpot_v2_extracted |
social_cards |
software | healthy | social/claude_design_export/BatiSpot_v2_extracted/social_ca… |
uploads |
software | healthy | social/claude_design_export/BatiSpot_v2_extracted/uploads |
ui_kits |
software | healthy | social/claude_design_export/BatiSpot_v2_extracted/ui_kits |
website |
software | healthy | social/claude_design_export/BatiSpot_v2_extracted/ui_kits/w… |
artisan-app |
software | healthy | social/claude_design_export/BatiSpot_v2_extracted/ui_kits/a… |
preview |
software | healthy | social/claude_design_export/BatiSpot_v2_extracted/preview |
campagne-insta |
software | healthy | social/campagne-insta |
posts |
software | healthy | social/campagne-insta/posts |
leads-machine |
software | healthy | leads-machine |
agents |
software | healthy | agents |
acquisition_particuliers |
software | healthy | agents/acquisition_particuliers |
shared |
software | healthy | agents/shared |
social |
software | healthy | agents/social |
reports |
software | healthy | agents/reports |
acquisition_artisans |
software | healthy | agents/acquisition_artisans |
crm_metrics |
software | healthy | agents/crm_metrics |
seo |
software | healthy | agents/seo |
supabase |
software | healthy | supabase |
functions |
software | healthy | supabase/functions |
notify-artisan-status |
software | healthy | supabase/functions/notify-artisan-status |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
POST /api/devis |
api | healthy | server.js |
GET /api/devis |
api | healthy | server.js |
PATCH /api/devis/:id |
api | healthy | server.js |
POST /api/partenaires |
api | healthy | server.js |
GET /api/partenaires |
api | healthy | server.js |
PATCH /api/partenaires/:id |
api | healthy | server.js |
GET /api/matching |
api | healthy | server.js |
GET /api/matching/unmatched |
api | healthy | server.js |
POST /api/matching/devis/:id |
api | healthy | server.js |
POST /api/matching/auto |
api | healthy | server.js |
PATCH /api/matching/:id |
api | healthy | server.js |
GET /api/stats |
api | healthy | server.js |
GET /api/track/open/:trackId |
api | healthy | server.js |
GET /api/track/click/:trackId |
api | healthy | server.js |
POST /api/track/log |
api | healthy | server.js |
POST /api/track/reply |
api | healthy | server.js |
POST /api/track/stop |
api | healthy | server.js |
GET /api/track/stats |
api | healthy | server.js |
GET /api/track/list |
api | healthy | server.js |
POST /api/checkout |
api | healthy | server.js |
| Label | Layer | Status | Path |
|---|---|---|---|
auth::supabase/functions/notify-artisan-status/index.ts |
security | healthy | supabase/functions/notify-artisan-status/index.ts |
auth::app/simulator-screens.html |
security | healthy | app/simulator-screens.html |
auth::app/login.html |
security | healthy | app/login.html |
auth::app/supabase/functions/stripe-webhook/index.ts |
security | healthy | app/supabase/functions/stripe-webhook/index.ts |
auth::social/setup_meta.py |
security | healthy | social/setup_meta.py |
auth::supabase/functions/subscribe-push/index.ts |
security | healthy | supabase/functions/subscribe-push/index.ts |
auth::supabase/functions/verify-turnstile/index.ts |
security | healthy | supabase/functions/verify-turnstile/index.ts |
auth::agents/social/README.md |
security | healthy | agents/social/README.md |
auth::app/supabase/functions/notify-artisans/index.ts |
security | healthy | app/supabase/functions/notify-artisans/index.ts |
auth::app/inscription-pro.html |
security | healthy | app/inscription-pro.html |
auth::supabase/functions/README.md |
security | healthy | supabase/functions/README.md |
auth::supabase/functions/stripe-webhook/index.ts |
security | healthy | supabase/functions/stripe-webhook/index.ts |
auth::app/supabase/functions/notify-client/index.ts |
security | healthy | app/supabase/functions/notify-client/index.ts |
auth::app/supabase/config.toml |
security | healthy | app/supabase/config.toml |
| Label | Layer | Status | Path |
|---|---|---|---|
artisan_leads |
data | healthy | app/supabase-artisan-leads.sql |
reviews |
data | healthy | app/supabase-features-2026-04-28.sql |
push_subscriptions |
data | healthy | app/supabase-push-subscriptions.sql |
pro_profiles |
data | healthy | app/supabase-schema.sql |
chantiers |
data | healthy | app/supabase-schema.sql |
photos |
data | healthy | app/supabase-schema.sql |
messages |
data | healthy | app/supabase-schema.sql |
devis |
data | healthy | app/supabase-schema.sql |
client_profiles |
data | healthy | app/supabase-schema.sql |
demandes_devis |
data | healthy | app/supabase-schema.sql |
ai_requests |
data | healthy | app/supabase-schema.sql |
client_documents |
data | healthy | app/supabase-coffre-fort-2026-04-28.sql |
| Label | Layer | Status | Path |
|---|---|---|---|
120.0.0.0 |
network | healthy | email-agent/scraper_pj_syndics.py |
124.0.0.0 |
network | healthy | email-agent/enrich_b2b_from_crm.py |
122.0.0.0 |
network | healthy | email-agent/scraper_cgp_immo.py |
1.1.1.1 |
network | healthy | email-agent/enrich_batch_20260420.py |
8.8.8.8 |
network | healthy | email-agent/enrich_batch_20260420.py |
9.9.9.9 |
network | healthy | email-agent/enrich_batch_20260420.py |
126.0.0.0 |
network | healthy | email-agent/scrape_syndics_direct.py |
121.0.0.0 |
network | healthy | email-agent/scraper_avis_negatifs.py |
127.0.0.1 |
network | healthy | app/supabase/functions/stripe-webhook/index.ts |
123.0.0.0 |
network | healthy | leads-machine/enrich_sci_contacts.py |
| Label | Layer | Status | Path |
|---|---|---|---|
_Stripper |
software | healthy | email-agent/scraper_avis_negatifs.py:183 |
VapiWebhookHandler |
software | healthy | email-agent/vapi/webhook_handler.py:60 |
TextExtractor |
software | healthy | social/meta_publisher 3.py:42 |
TextExtractor |
software | healthy | social/meta_publisher 2.py:42 |
TextExtractor |
software | healthy | social/meta_publisher 4.py:42 |
TextExtractor |
software | healthy | social/meta_publisher.py:42 |
TitleExtractor |
software | healthy | social/generate_og_image.py:142 |
| Label | Layer | Status | Path |
|---|---|---|---|
port:8090 |
network | healthy | email-agent/vapi/webhook_handler.py |
port:09 |
network | healthy | scripts/morning_routine.sh |
port:30 |
network | healthy | scripts/morning_routine.sh |
port:15 |
network | healthy | scripts/run_daily_enrichment.sh |
| Label | Layer | Status | Path |
|---|---|---|---|
sqlite |
data | healthy | README.md |
postgres |
data | healthy | app/supabase/config.toml |
redis |
data | healthy | app/supabase/functions/notify-admin/index.ts |
| Label | Layer | Status | Path |
|---|---|---|---|
supabase-migration-qualifications-2026-04-28.sql |
data | healthy | app/supabase-migration-qualifications-2026-04-28.sql |
supabase-migration-security-2026-04-25.sql |
data | healthy | app/supabase-migration-security-2026-04-25.sql |
supabase-migration-sprint1.sql |
data | healthy | app/supabase-migration-sprint1.sql |
| Label | Layer | Status | Path |
|---|---|---|---|
vps::gcp |
hardware | healthy | email-agent/enrich_phones_places.py |
vps::azure |
hardware | healthy | email-agent/vapi/assistants.py |
vps::aws |
hardware | healthy | app/supabase/config.toml |
| Label | Layer | Status | Path |
|---|---|---|---|
repobility-clone-0bbqzcfc |
software | healthy | /tmp/repobility-clone-0bbqzcfc |
| Label | Layer | Status | Path |
|---|---|---|---|
gpu (detected) |
hardware | healthy | blog-pro/_batch4.py |
This page is publicly accessible at:
https://repobility.com/scan/aef61721-c4d7-413a-8d8d-2c739e40c54f/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/aef61721-c4d7-413a-8d8d-2c739e40c54f/
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.