github Python re-analysis due

vicquick/nobrainr

github

Persistent memory and knowledge graph for AI agents via MCP — PostgreSQL + pgvector + Ollama

maintainer
vicquick
license
MIT
first seen
2026-06-05
last seen
2026-09-05
releases · 30d
0
short id

Drift inferred · capture-to-capture

No drift recorded — single capability capture; advisories appear once its surface changes.

capabilities 74 tools
transport stdio · streamable-http · http · sse counts 74 tools · 0 res · 0 prompts permission surface via code analysis

tools

  • agent_presence
  • agents_active
  • chat_recall
  • code_index
  • code_search
  • community_detect
  • community_list
  • community_members
  • crawl_and_store
  • crawl_page
  • decision_search
  • decision_store
  • deep_crawl
  • deep_recall
  • discover_sitemap
  • distill
  • distill_search
  • entity_graph
  • entity_list
  • entity_memories
  • entity_search
  • error_search
  • error_store
  • evidence_gather
  • fact_demote
  • fact_promote
  • fact_search
  • fact_search_prioritized
  • global_search
  • graph_search
  • handoff_create
  • handoff_pickup
  • handoff_resolve
  • library_search
  • log_event
  • memory_aggregate
  • memory_delete
  • memory_delete_procedural
  • memory_extract
  • memory_feedback
  • memory_get
  • memory_get_procedural
  • memory_get_user_profile
  • memory_history
  • memory_import_chatgpt
  • memory_import_chatgpt_sessions
  • memory_import_claude
  • memory_import_claude_memories
  • memory_import_claude_projects
  • memory_import_claude_web
  • memory_import_documents
  • memory_import_docx
  • memory_import_github
  • memory_import_markdown_notes
  • memory_import_sticky_notes
  • memory_import_website
  • memory_maintenance
  • memory_query
  • memory_reflect
  • memory_restore
  • memory_search
  • memory_set_tier
  • memory_stats
  • memory_store
  • memory_store_document
  • memory_store_procedural
  • memory_store_status
  • memory_tier_stats
  • memory_update
  • msg_send
  • msg_wait
  • record_observation
  • session_brief
  • web_search
skills & danger signals github-tarball
prompt-surface shipped agent-instruction files + hidden-content / dangerous-code findings — quoted from the analyzed source

analyzed commit d538228 · analyzer v32 · 3w ago

skills & prompt files 1

danger signals1

code evidence vv0.2.0 · github-tarball
evidence-backed findings quoted directly from the published source artifact — not inferred

code files: 134

filesystem 26

  • fs (weak) vicquick-nobrainr-d538228/scripts/ab_evidence_gather.py :16 from pathlib import Path
  • fs (weak) vicquick-nobrainr-d538228/scripts/ab_session_brief.py :25 from pathlib import Path
  • fs (weak) vicquick-nobrainr-d538228/scripts/eval_hook_precision.py :86 lines = open(f, encoding="utf-8", errors="replace").read().splitlines()
  • fs (weak) vicquick-nobrainr-d538228/scripts/eval_longmemeval.py :33 from pathlib import Path
  • fs (weak) vicquick-nobrainr-d538228/scripts/expand_golden_siblings.py :29 from pathlib import Path
  • fs (weak) vicquick-nobrainr-d538228/scripts/export_voice_corpus.py :31 from pathlib import Path
  • fs (weak) vicquick-nobrainr-d538228/scripts/golden_set/run_golden.py :32 from pathlib import Path
  • fs (weak) vicquick-nobrainr-d538228/scripts/locomo/run_locomo.py :25 from pathlib import Path
  • fs (weak) vicquick-nobrainr-d538228/scripts/longmemeval/run_lme.py :31 from pathlib import Path
  • fs (weak) vicquick-nobrainr-d538228/scripts/migrations/2026-04-18-canonicalize-tags.py :21 from pathlib import Path
  • fs (weak) vicquick-nobrainr-d538228/scripts/seed_golden_queries.py :30 from pathlib import Path
  • fs (weak) vicquick-nobrainr-d538228/scripts/seed_golden_queries_v2.py :29 from pathlib import Path
  • fs (weak) vicquick-nobrainr-d538228/scripts/seed_golden_queries_v3.py :30 from pathlib import Path
  • fs vicquick-nobrainr-d538228/src/nobrainr/dashboard/api.py :114 with open(_GRAPH_CACHE_PATH, "r") as f:
  • fs vicquick-nobrainr-d538228/src/nobrainr/importers/chatgpt.py :12 from pathlib import Path
  • fs vicquick-nobrainr-d538228/src/nobrainr/importers/claude.py :4 from pathlib import Path
  • fs vicquick-nobrainr-d538228/src/nobrainr/importers/claude_web.py :32 with open(file_path, encoding="utf-8") as f:
  • fs vicquick-nobrainr-d538228/src/nobrainr/importers/documents.py :16 from pathlib import Path
  • fs vicquick-nobrainr-d538228/src/nobrainr/importers/docx_importer.py :4 from pathlib import Path
  • fs vicquick-nobrainr-d538228/src/nobrainr/importers/markdown_notes.py :4 from pathlib import Path
  • fs vicquick-nobrainr-d538228/src/nobrainr/importers/sticky_notes.py :23 with open(file_path, encoding="utf-8-sig") as f:
  • fs vicquick-nobrainr-d538228/src/nobrainr/importers/website.py :5 from pathlib import Path
  • fs vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :3464 from pathlib import Path
  • fs vicquick-nobrainr-d538228/src/nobrainr/monitoring.py :5 import shutil
  • fs vicquick-nobrainr-d538228/src/nobrainr/scheduler_jobs.py :1946 os.remove(_cache)
  • fs vicquick-nobrainr-d538228/src/nobrainr/services/code_index.py :10 from pathlib import Path

network 16

  • net (weak) vicquick-nobrainr-d538228/scripts/eval_hook_precision.py :30 import urllib.request
  • net (weak) vicquick-nobrainr-d538228/scripts/eval_longmemeval.py :46 import httpx
  • net vicquick-nobrainr-d538228/src/nobrainr/chat/rag.py :8 import httpx
  • net vicquick-nobrainr-d538228/src/nobrainr/cli.py :45 import httpx
  • net vicquick-nobrainr-d538228/src/nobrainr/crawler/client.py :10 import httpx
  • net vicquick-nobrainr-d538228/src/nobrainr/crawler/knowledge.py :16 from urllib.parse import urlparse
  • net vicquick-nobrainr-d538228/src/nobrainr/dashboard/api.py :12 import httpx
  • net vicquick-nobrainr-d538228/src/nobrainr/embeddings/ollama.py :27 import httpx
  • net vicquick-nobrainr-d538228/src/nobrainr/extraction/llm.py :22 ``RemoteProtocolError`` only. Critically, ``httpx.ReadTimeout`` and
  • net vicquick-nobrainr-d538228/src/nobrainr/importers/documents.py :39 import httpx
  • net vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :2884 import httpx
  • net vicquick-nobrainr-d538228/src/nobrainr/monitoring.py :7 import socket
  • net vicquick-nobrainr-d538228/src/nobrainr/scheduler_jobs.py :6 import socket
  • net vicquick-nobrainr-d538228/src/nobrainr/services/distill.py :9 import httpx
  • net vicquick-nobrainr-d538228/src/nobrainr/services/reranker.py :212 import httpx
  • net (weak) vicquick-nobrainr-d538228/tests/test_web_search.py :15 import httpx

database 3

  • db vicquick-nobrainr-d538228/src/nobrainr/db/pool.py :5 import asyncpg
  • db vicquick-nobrainr-d538228/src/nobrainr/db/queries.py :11 import asyncpg
  • db vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :4535 import asyncpg

tool registrations 74

  • session_brief vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :329
  • memory_store vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :390
  • memory_store_status vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :495
  • memory_search vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :737
  • deep_recall vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :1170
  • library_search vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :1317
  • evidence_gather vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :1455
  • memory_aggregate vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :1658
  • memory_query vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :1786
  • memory_get vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :1823
  • memory_update vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :1840
  • memory_delete vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :1897
  • decision_store vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :1928
  • decision_search vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :2023
  • memory_store_procedural vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :2101
  • memory_get_procedural vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :2166
  • memory_delete_procedural vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :2219
  • memory_get_user_profile vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :2251
  • memory_history vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :2339
  • memory_restore vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :2360
  • memory_stats vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :2385
  • entity_search vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :2397
  • entity_graph vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :2421
  • entity_list vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :2441
  • entity_memories vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :2466
  • memory_maintenance vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :2483
  • memory_extract vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :2504
  • memory_feedback vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :2527
  • memory_reflect vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :2583
  • log_event vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :2637
  • error_store vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :2682
  • error_search vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :2737
  • crawl_page vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :2768
  • web_search vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :2963
  • crawl_and_store vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :3094
  • deep_crawl vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :3223
  • discover_sitemap vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :3316
  • memory_store_document vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :3343
  • memory_import_chatgpt_sessions vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :3413
  • memory_import_chatgpt vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :3456
  • memory_import_claude vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :3472
  • memory_import_claude_web vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :3488
  • memory_import_claude_memories vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :3506
  • memory_import_claude_projects vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :3524
  • memory_import_sticky_notes vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :3542
  • memory_import_markdown_notes vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :3560
  • memory_import_docx vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :3581
  • memory_import_website vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :3599
  • memory_import_documents vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :3620
  • memory_import_github vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :3658
  • distill vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :3706
  • distill_search vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :3741
  • code_index vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :3788
  • code_search vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :3825
  • community_detect vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :3876
  • community_list vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :3901
  • community_members vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :3915
  • memory_set_tier vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :3930
  • memory_tier_stats vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :3953
  • handoff_create vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :3963
  • handoff_pickup vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :4029
  • handoff_resolve vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :4062
  • global_search vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :4095
  • graph_search vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :4117
  • fact_search vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :4143
  • fact_search_prioritized vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :4200
  • fact_promote vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :4257
  • fact_demote vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :4290
  • record_observation vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :4319
  • chat_recall vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :4357
  • agent_presence vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :4425
  • agents_active vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :4453
  • msg_send vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :4468
  • msg_wait vicquick-nobrainr-d538228/src/nobrainr/mcp/server.py :4516

declared dependencies 25

  • mcp@>=1.9.0
  • asyncpg@>=0.30.0
  • pgvector@>=0.3.6
  • httpx@>=0.28.0
  • pydantic@>=2.10.0
  • pydantic-settings@>=2.7.0
  • click@>=8.1.0
  • rich@>=13.9.0
  • starlette@>=0.41.0
  • uvicorn@>=0.32.0
  • numpy@>=1.26.0
  • networkx@>=3.0
  • scipy@>=1.12.0
  • pyyaml@>=6.0
  • python-docx@>=1.0
  • pymupdf@>=1.25.0
  • umap-learn@>=0.5.0
  • scikit-learn@>=1.4.0
  • sentence-transformers@>=3.3.0
  • flashrank@>=0.2.10
  • leidenalg@>=0.10.2
  • python-igraph@>=0.11.6
  • pytest@>=8.0
  • pytest-asyncio@>=0.24
  • ruff@>=0.8.0