github Python analyzed da8ef1c

Cipher208/docs-haven

github

Add repos, and your agent always has them at hand. Local knowledge base with instant search, zero dependencies. MCP server for Claude, Cursor, Gemini, Codex.

maintainer
Cipher208
license
MIT
first seen
2026-07-15
last seen
2026-08-08
releases · 30d
0
short id

Drift inferred · capture-to-capture

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

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

tools

  • kb_add_repo
  • kb_check_imports
  • kb_collection_rename
  • kb_conflict_check
  • kb_conflict_details
  • kb_conflict_judge
  • kb_conflict_suggest
  • kb_context_add
  • kb_context_list
  • kb_context_rm
  • kb_delete
  • kb_get
  • kb_list_collections
  • kb_search
  • kb_stats
  • kb_sync_export
  • kb_sync_import
  • kb_sync_status
  • kb_template_apply
  • kb_template_list
  • kb_update
  • kb_uri_domains
  • kb_uri_list
  • kb_uri_resolve
  • kb_uri_search
skills & danger signals github-tarball
prompt-surface shipped agent-instruction files + hidden-content / dangerous-code findings — quoted from the analyzed source

analyzed commit da8ef1c · analyzer v33 · 2d ago

skills & prompt files 1

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

code files: 39

filesystem 25

  • fs Cipher208-docs-haven-da8ef1c/benchmark.py :10 from pathlib import Path
  • fs Cipher208-docs-haven-da8ef1c/chunking.py :4 from pathlib import Path
  • fs Cipher208-docs-haven-da8ef1c/cli.py :237 from pathlib import Path
  • fs Cipher208-docs-haven-da8ef1c/import_guard.py :10 from pathlib import Path
  • fs Cipher208-docs-haven-da8ef1c/server.py :5 from pathlib import Path
  • fs Cipher208-docs-haven-da8ef1c/storage.py :16 import shutil
  • fs Cipher208-docs-haven-da8ef1c/sync.py :14 from pathlib import Path
  • fs (weak) Cipher208-docs-haven-da8ef1c/tests/conftest.py :4 from pathlib import Path
  • fs (weak) Cipher208-docs-haven-da8ef1c/tests/test_auto_chunk.py :6 from pathlib import Path
  • fs (weak) Cipher208-docs-haven-da8ef1c/tests/test_chaos.py :5 from pathlib import Path
  • fs (weak) Cipher208-docs-haven-da8ef1c/tests/test_conflict_resolution.py :5 from pathlib import Path
  • fs (weak) Cipher208-docs-haven-da8ef1c/tests/test_conflicts.py :4 from pathlib import Path
  • fs (weak) Cipher208-docs-haven-da8ef1c/tests/test_context.py :5 from pathlib import Path
  • fs (weak) Cipher208-docs-haven-da8ef1c/tests/test_coverage_boost.py :5 from pathlib import Path
  • fs (weak) Cipher208-docs-haven-da8ef1c/tests/test_e2e.py :8 from pathlib import Path
  • fs (weak) Cipher208-docs-haven-da8ef1c/tests/test_export_import.py :6 from pathlib import Path
  • fs (weak) Cipher208-docs-haven-da8ef1c/tests/test_final_coverage.py :5 from pathlib import Path
  • fs (weak) Cipher208-docs-haven-da8ef1c/tests/test_import_guard.py :5 from pathlib import Path
  • fs (weak) Cipher208-docs-haven-da8ef1c/tests/test_rename.py :5 from pathlib import Path
  • fs (weak) Cipher208-docs-haven-da8ef1c/tests/test_storage.py :4 from pathlib import Path
  • fs (weak) Cipher208-docs-haven-da8ef1c/tests/test_storage_crud.py :4 from pathlib import Path
  • fs (weak) Cipher208-docs-haven-da8ef1c/tests/test_sync.py :4 from pathlib import Path
  • fs (weak) Cipher208-docs-haven-da8ef1c/tests/test_templates.py :5 from pathlib import Path
  • fs (weak) Cipher208-docs-haven-da8ef1c/tests/test_uri_router.py :4 from pathlib import Path
  • fs (weak) Cipher208-docs-haven-da8ef1c/tests/test_vector.py :5 from pathlib import Path

shell / exec 1

  • shell Cipher208-docs-haven-da8ef1c/storage.py :18 import subprocess

network 1

  • net Cipher208-docs-haven-da8ef1c/validation.py :27 from urllib.parse import urlparse

secrets 1

  • secrets Cipher208-docs-haven-da8ef1c/sync.py :258 import getpass

database 2

  • db Cipher208-docs-haven-da8ef1c/storage.py :17 import sqlite3
  • db (weak) Cipher208-docs-haven-da8ef1c/tests/test_chaos.py :3 import sqlite3

tool registrations 25

  • kb_search Cipher208-docs-haven-da8ef1c/server.py :70
  • kb_add_repo Cipher208-docs-haven-da8ef1c/server.py :95
  • kb_get Cipher208-docs-haven-da8ef1c/server.py :121
  • kb_update Cipher208-docs-haven-da8ef1c/server.py :135
  • kb_delete Cipher208-docs-haven-da8ef1c/server.py :153
  • kb_collection_rename Cipher208-docs-haven-da8ef1c/server.py :170
  • kb_list_collections Cipher208-docs-haven-da8ef1c/server.py :181
  • kb_check_imports Cipher208-docs-haven-da8ef1c/server.py :188
  • kb_stats Cipher208-docs-haven-da8ef1c/server.py :203
  • kb_uri_resolve Cipher208-docs-haven-da8ef1c/server.py :213
  • kb_uri_search Cipher208-docs-haven-da8ef1c/server.py :225
  • kb_uri_list Cipher208-docs-haven-da8ef1c/server.py :234
  • kb_uri_domains Cipher208-docs-haven-da8ef1c/server.py :243
  • kb_sync_export Cipher208-docs-haven-da8ef1c/server.py :252
  • kb_sync_import Cipher208-docs-haven-da8ef1c/server.py :270
  • kb_sync_status Cipher208-docs-haven-da8ef1c/server.py :276
  • kb_conflict_check Cipher208-docs-haven-da8ef1c/server.py :285
  • kb_conflict_judge Cipher208-docs-haven-da8ef1c/server.py :307
  • kb_conflict_details Cipher208-docs-haven-da8ef1c/server.py :323
  • kb_conflict_suggest Cipher208-docs-haven-da8ef1c/server.py :333
  • kb_template_list Cipher208-docs-haven-da8ef1c/server.py :343
  • kb_template_apply Cipher208-docs-haven-da8ef1c/server.py :351
  • kb_context_add Cipher208-docs-haven-da8ef1c/server.py :370
  • kb_context_list Cipher208-docs-haven-da8ef1c/server.py :386
  • kb_context_rm Cipher208-docs-haven-da8ef1c/server.py :401

declared dependencies 6

  • mcp@>=1.27,<3
  • Inconclusive@*
  • pytest@>=7.0
  • pytest-asyncio@>=0.21
  • pytest-timeout@>=2.0
  • pytest-cov@>=5.0