Codebase intelligence for AI and humans: code health scores, auto-generated docs, git analytics, dead code detection, and architectural decisions via MCP.
Drift inferred · capture-to-capture
- HIGH code analysis flagged dynamic code execution ×2 in repowise-dev/repowise
- HIGH code analysis flagged dynamic code execution ×2 in repowise-dev/repowise
- HIGH code analysis flagged dynamic code execution ×2 in repowise-dev/repowise
- HIGH code analysis flagged dynamic code execution ×2 in repowise-dev/repowise
- HIGH code analysis flagged dynamic code execution in repowise-dev/repowise
- HIGH code analysis flagged dynamic code execution in repowise-dev/repowise
- HIGH code analysis flagged dynamic code execution in repowise-dev/repowise
- HIGH code analysis flagged dynamic code execution in repowise-dev/repowise
- HIGH code analysis flagged dynamic code execution in repowise-dev/repowise
- HIGH code analysis flagged dynamic code execution in repowise-dev/repowise
- HIGH code analysis flagged dynamic code execution in repowise-dev/repowise
- HIGH code analysis flagged dynamic code execution in repowise-dev/repowise
- HIGH code analysis flagged dynamic code execution in repowise-dev/repowise
- HIGH code analysis flagged dynamic code execution in repowise-dev/repowise
- HIGH code analysis flagged dynamic code execution in repowise-dev/repowise
- HIGH code analysis flagged dynamic code execution in repowise-dev/repowise
- HIGH code analysis flagged dynamic code execution in repowise-dev/repowise
- HIGH code analysis flagged dynamic code execution in repowise-dev/repowise
- HIGH code analysis flagged dynamic code execution in repowise-dev/repowise
- HIGH code analysis flagged dynamic code execution in repowise-dev/repowise
tools
-
generate_refactoring_code
-
get_architecture
-
get_blast_radius
-
get_change_risk
-
get_conformance
-
get_dead_code
-
get_dependency_path
-
get_execution_flows
-
get_overview
-
get_symbol
-
list_repos
analyzed commit 920d1c9 · analyzer v33 · 18h ago
skills & prompt files 12
- skill repowise-dev-repowise-920d1c9/plugins/claude-code/skills/architectural-decisions/SKILL.md
- skill repowise-dev-repowise-920d1c9/plugins/claude-code/skills/change-review/SKILL.md
- skill repowise-dev-repowise-920d1c9/plugins/claude-code/skills/code-health/SKILL.md
- skill repowise-dev-repowise-920d1c9/plugins/claude-code/skills/codebase-exploration/SKILL.md
- skill repowise-dev-repowise-920d1c9/plugins/claude-code/skills/dead-code-cleanup/SKILL.md
- skill repowise-dev-repowise-920d1c9/plugins/claude-code/skills/pre-modification/SKILL.md
- skill repowise-dev-repowise-920d1c9/plugins/codex/skills/architectural-decisions/SKILL.md
- skill repowise-dev-repowise-920d1c9/plugins/codex/skills/change-review/SKILL.md
- skill repowise-dev-repowise-920d1c9/plugins/codex/skills/code-health/SKILL.md
- skill repowise-dev-repowise-920d1c9/plugins/codex/skills/codebase-exploration/SKILL.md
- skill repowise-dev-repowise-920d1c9/plugins/codex/skills/dead-code-cleanup/SKILL.md
- skill repowise-dev-repowise-920d1c9/plugins/codex/skills/pre-modification-check/SKILL.md
danger signals8
- dynamic code execution pickle.loads() repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/analysis/health/walk_cache.py :75
value = pickle.loads(blob) - dynamic code execution pickle.loads() repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/ingestion/parse_cache.py :172
parsed: Any = pickle.loads(blob) - dynamic code execution __import__() repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/ingestion/parser.py :820
mod = __import__(spec.grammar_package) - dynamic code execution __import__() repowise-dev-repowise-920d1c9/tests/unit/cli/test_health_rescore_gate.py :175
lines = inspect.getsource(__import__(module_name, fromlist=["*"])).splitlines() - dynamic code execution pickle.loads() repowise-dev-repowise-920d1c9/tests/unit/generation/test_models.py :227
assert pickle.loads(pickle.dumps(config)) == config - dynamic code execution pickle.loads() repowise-dev-repowise-920d1c9/tests/unit/ingestion/test_centrality_cache.py :214
restored = pickle.loads(pickle.dumps(cache)) - dynamic code execution pickle.loads() repowise-dev-repowise-920d1c9/tests/unit/ingestion/test_parse_cache.py :137
payload = pickle.loads(unseal(cache_file.read_bytes(), domain=_CACHE_DOMAIN)) - dynamic code execution __import__() repowise-dev-repowise-920d1c9/tests/unit/persistence/test_page_tree_wiring.py :51
module = __import__(module_name, fromlist=["*"])
code files: 3959
filesystem 400
- fs (weak) repowise-dev-repowise-920d1c9/docs/design/contrast_check.py :10
import pathlib - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/_repo_session.py :10
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/agent_adapters/base.py :15
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/agent_adapters/claude_code.py :21
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/agent_adapters/codex.py :33
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/agent_targets/formats/json_merge.py :29
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/agent_targets/formats/marker_block.py :27
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/agent_targets/formats/observe.py :18
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/agent_targets/formats/toml_merge.py :29
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/agent_targets/formats/yaml_merge.py :54
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/agent_targets/registry.py :24
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/agent_targets/targets/claude_code.py :30
from pathlib import Path
show 28 more
- fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/agent_targets/targets/codex.py :37
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/agent_targets/targets/cursor.py :48
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/agent_targets/targets/hermes.py :56
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/agent_targets/targets/opencode.py :63
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/agent_targets/targets/vscode.py :24
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/agent_targets/types.py :38
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/_tool_adapters.py :12
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/agents_cmd.py :29
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/augment_cmd/_shared.py :14
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/augment_cmd/bash_staleness.py :7
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/augment_cmd/codex.py :18
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/augment_cmd/command.py :92
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/augment_cmd/decision_inject.py :33
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/augment_cmd/fast_lookup.py :26
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/augment_cmd/glob_rescue.py :37
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/augment_cmd/read_skeleton.py :52
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/augment_cmd/read_state.py :42
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/augment_cmd/replacement.py :46
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/augment_cmd/reread.py :62
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/augment_cmd/search.py :25
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/augment_cmd/search_digest.py :44
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/augment_cmd/served_reads.py :41
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/augment_cmd/session_start.py :27
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/augment_cmd/wrong_path.py :22
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/claude_md_cmd.py :6
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/corrections_cmd.py :14
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/costs_cmd.py :6
from pathlib import Path - fs repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/coverage_cmd.py :13
from pathlib import Path
360 more not shown — this panel samples each group; the count above is the real total.
shell / exec 134
- shell repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/augment_cmd/bash_staleness.py :74
import subprocess - shell repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/augment_cmd/decision_inject.py :154
import subprocess - shell repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/augment_cmd/session_start.py :126
import subprocess - shell repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/distill_cmd.py :14
import subprocess - shell repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/doctor_cmd/mcp_smoke.py :28
import subprocess - shell repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/serve_cmd.py :10
import subprocess - shell repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/update_cmd/persistence.py :313
import subprocess - shell repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/editor_integrations/codex_config.py :24
import subprocess - shell repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/helpers.py :526
import subprocess - shell repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/hooks.py :15
import subprocess - shell repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/mcp_config.py :23
import subprocess - shell repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/platform/telemetry/emitter.py :30
import subprocess
show 28 more
- shell repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/ui/repo_scanner.py :6
import subprocess - shell repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/worktree.py :13
import subprocess - shell repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/analysis/change_health/sources.py :11
import subprocess - shell repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/analysis/change_risk/baseline.py :11
import subprocess - shell repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/analysis/change_risk/features.py :20
import subprocess - shell repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/analysis/change_risk/fix_history.py :22
import subprocess - shell repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/analysis/change_risk/service.py :5
import subprocess - shell repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/analysis/decisions/accepter.py :13
import subprocess - shell repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/analysis/decisions/extractor.py :1446
import subprocess - shell repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/analysis/health/coverage/decay.py :38
import subprocess - shell repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/analysis/history_scan.py :36
import subprocess - shell repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/analysis/security_scan.py :202
# ``subprocess.run(...)`` cannot jump to a later ``os.popen(..., shell=True)`` - shell repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/generation/editor_files/fetcher.py :11
import subprocess - shell repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/git_refs.py :11
import subprocess - shell repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/pipeline/persist.py :809
import subprocess - shell repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/precedent/currency.py :32
import subprocess - shell repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/precedent/structural.py :25
import subprocess - shell repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/procutils.py :29
import subprocess - shell repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/providers/llm/codex_cli.py :14
import subprocess - shell repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/providers/llm/opencode.py :21
import subprocess - shell repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/workspace/cross_repo.py :17
import subprocess - shell repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/workspace/update.py :13
import subprocess - shell repowise-dev-repowise-920d1c9/packages/server/src/repowise/server/job_executor.py :722
import subprocess as _sp - shell repowise-dev-repowise-920d1c9/packages/server/src/repowise/server/mcp_server/_code_rationale.py :35
import subprocess - shell repowise-dev-repowise-920d1c9/packages/server/src/repowise/server/mcp_server/_meta.py :139
import subprocess - shell repowise-dev-repowise-920d1c9/packages/server/src/repowise/server/mcp_server/_why_evidence.py :22
import subprocess - shell repowise-dev-repowise-920d1c9/packages/server/src/repowise/server/mcp_server/tool_answer/data_shape.py :22
import subprocess - shell repowise-dev-repowise-920d1c9/packages/server/src/repowise/server/mcp_server/tool_change_risk.py :7
import subprocess
94 more not shown — this panel samples each group; the count above is the real total.
network 112
- net repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/login_cmd.py :23
from urllib.parse import parse_qs, urlparse - net repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/serve_cmd.py :9
import socket - net repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/platform/auth.py :53
from urllib.parse import urlencode - net repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/platform/client.py :98
import httpx - net repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/ui/openai_compatible.py :7
from urllib.parse import urlparse, urlunparse - net repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/ui/provider_selection.py :7
import socket - net repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/analysis/decisions/conventions.py :179
httpx.Client()``, an exported ``fetch`` built over undici. A binding that - net repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/analysis/health/biomarkers/blocking_sync_in_async.py :3
A synchronous ``time.sleep`` / ``requests.get`` / ``subprocess.run`` / - net repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/analysis/health/biomarkers/resource_construction_in_loop.py :4
(``sqlite3.connect`` / ``httpx.Client`` / ``boto3.client`` / ``new - net repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/analysis/health/complexity/models.py :166
(``sqlite3.connect`` / ``httpx.Client`` / ``boto3.client`` / ``new - net repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/analysis/health/perf/dialects/python.py :252
# ``requests.get(...)`` is a member call on an imported client; a bare - net repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/analysis/health/perf/io_boundaries.py :137
# is coarser than true scoping (it also suppresses a genuine ``requests.get``
show 28 more
- net repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/ingestion/resolvers/python.py :75
# file, so without the suffix guard ``import httpx`` resolved to a - net repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/platform/telemetry.py :153
import httpx - net repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/providers/embedding/ollama.py :13
import httpx - net repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/providers/llm/anthropic.py :62
import httpx - net repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/providers/llm/base.py :377
Accepts any mapping-like object with ``.get`` (httpx.Headers, dict). - net repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/providers/llm/deepseek.py :106
import httpx - net repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/providers/llm/edenai.py :125
import httpx - net repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/providers/llm/gemini.py :130
import httpx - net repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/providers/llm/kimi.py :120
import httpx - net repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/providers/llm/ollama.py :85
import httpx - net repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/providers/llm/openai.py :20
from urllib.parse import urlparse - net repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/providers/llm/openrouter.py :133
import httpx - net repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/upgrade/release.py :85
import httpx - net repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/workspace/extractors/http/index_clients.py :17
(``async with httpx.AsyncClient() as http`` … ``http.post(url)``), so its - net repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/workspace/extractors/http/python_clients.py :18
# requests.get('http://host/api/users') or httpx.post(...) - net repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/workspace/extractors/http/wrappers.py :307
# ``client = httpx.AsyncClient(...)``, ``self._c = client or httpx.Client()``. - net repowise-dev-repowise-920d1c9/packages/server/src/repowise/server/routers/feedback.py :21
import httpx - net repowise-dev-repowise-920d1c9/packages/server/src/repowise/server/routers/modules.py :9
from urllib.parse import unquote - net repowise-dev-repowise-920d1c9/packages/server/src/repowise/server/routers/owners.py :10
from urllib.parse import unquote - net repowise-dev-repowise-920d1c9/packages/server/src/repowise/server/routers/webhooks.py :10
from urllib.parse import urlparse - net (weak) repowise-dev-repowise-920d1c9/tests/fixtures/lang_samples/python/perf_io_in_loop.py :12
import httpx - net (weak) repowise-dev-repowise-920d1c9/tests/unit/analysis/test_decision_conventions.py :27
WRAPPER_SRC = "import httpx\n\n\ndef get(url):\n return httpx.get(url)\n\n\ndef other_helper():\n return 1\n" - net (weak) repowise-dev-repowise-920d1c9/tests/unit/cli/test_serve_port_fallback.py :11
import socket - net (weak) repowise-dev-repowise-920d1c9/tests/unit/cli/test_update_check.py :5
import httpx - net (weak) repowise-dev-repowise-920d1c9/tests/unit/health/test_ff_track_aefg_perf.py :33
b"import requests\n" - net (weak) repowise-dev-repowise-920d1c9/tests/unit/health/test_perf_phase7a.py :172
"import httpx\nasync def f(urls):\n for u in urls:\n await httpx.get(u)\n", - net (weak) repowise-dev-repowise-920d1c9/tests/unit/health/test_perf_phase7b.py :177
src = "import httpx\nasync def handler(u):\n return await httpx.get(u)\n" - net (weak) repowise-dev-repowise-920d1c9/tests/unit/ingestion/test_python_resolver_external.py :76
path_set={"app.py", "baselines/httpx.json", "vendor/httpx.py"},
72 more not shown — this panel samples each group; the count above is the real total.
secrets 26
- secrets repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/mcp_cmd.py :65
if not os.environ.get("REPOWISE_API_KEY") and host in ("0.0.0.0", "::"): - secrets repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/serve_cmd.py :131
has_gemini = bool(os.environ.get("GEMINI_API_KEY") or os.environ.get("GOOGLE_API_KEY")) - secrets repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/ui/mode_selection.py :653
if os.environ.get("GEMINI_API_KEY") or os.environ.get("GOOGLE_API_KEY"): - secrets repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/ui/openai_compatible.py :67
existing_key = (os.environ.get("OPENAI_API_KEY") or "").strip() - secrets repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/ui/provider_selection.py :211
openai_has_key = bool((os.environ.get("OPENAI_API_KEY") or "").strip()) - secrets repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/analysis/decisions/accepter.py :12
import getpass - secrets repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/cache_seal.py :109
env_key = os.environ.get("REPOWISE_CACHE_HMAC_KEY") - secrets repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/providers/embedding/edenai.py :69
self._api_key = api_key or os.environ.get("EDENAI_API_KEY") - secrets repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/providers/embedding/gemini.py :64
api_key or os.environ.get("GEMINI_API_KEY") or os.environ.get("GOOGLE_API_KEY") - secrets repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/providers/embedding/openai.py :70
self._api_key = api_key or os.environ.get("OPENAI_API_KEY") - secrets repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/providers/embedding/openrouter.py :56
self._api_key = api_key or os.environ.get("OPENROUTER_API_KEY") - secrets repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/providers/llm/anthropic.py :124
resolved_key = api_key or os.environ.get("ANTHROPIC_API_KEY")
show 14 more
- secrets repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/providers/llm/deepseek.py :167
resolved_key = api_key or os.environ.get("DEEPSEEK_API_KEY") - secrets repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/providers/llm/edenai.py :190
resolved_key = api_key or os.environ.get("EDENAI_API_KEY") - secrets repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/providers/llm/gemini.py :221
api_key or os.environ.get("GEMINI_API_KEY") or os.environ.get("GOOGLE_API_KEY") - secrets repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/providers/llm/kimi.py :179
resolved_key = api_key or os.environ.get("KIMI_API_KEY") - secrets repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/providers/llm/openai.py :296
resolved_key = api_key or os.environ.get("OPENAI_API_KEY") - secrets repowise-dev-repowise-920d1c9/packages/core/src/repowise/core/providers/llm/openrouter.py :215
resolved_key = api_key or os.environ.get("OPENROUTER_API_KEY") - secrets repowise-dev-repowise-920d1c9/packages/server/src/repowise/server/deps.py :26
_API_KEY = os.environ.get("REPOWISE_API_KEY") - secrets repowise-dev-repowise-920d1c9/packages/server/src/repowise/server/mcp_server/_server.py :847
if host in ("0.0.0.0", "::") and not os.environ.get("REPOWISE_API_KEY"): - secrets repowise-dev-repowise-920d1c9/packages/server/src/repowise/server/routers/webhooks.py :80
secret = os.environ.get("REPOWISE_GITHUB_WEBHOOK_SECRET", "") - secrets repowise-dev-repowise-920d1c9/packages/server/src/repowise/server/stream_auth.py :42
key = os.environ.get("REPOWISE_API_KEY") - secrets (weak) repowise-dev-repowise-920d1c9/tests/integration/test_provider_live.py :24
OPENAI_KEY = os.environ.get("OPENAI_API_KEY", "") - secrets (weak) repowise-dev-repowise-920d1c9/tests/unit/cli/test_init_ux.py :320
assert os.environ["OPENAI_API_KEY"] == "router-secret" - secrets (weak) repowise-dev-repowise-920d1c9/tests/unit/cli/test_openai_compatible.py :65
assert os.environ["OPENAI_API_KEY"] == api_key - secrets (weak) repowise-dev-repowise-920d1c9/tests/unit/cli/test_update_provider_prompt.py :104
os.environ["MOCK_API_KEY"] = "sk-mock-test-key"
database 377
- db repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/augment_cmd/_shared.py :227
import sqlite3 - db repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/augment_cmd/decision_inject.py :32
import sqlite3 - db repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/augment_cmd/fast_lookup.py :25
import sqlite3 - db repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/augment_cmd/read_skeleton.py :45
import sqlite3 - db repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/augment_cmd/search.py :24
import sqlite3 - db repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/decision_cmd.py :103
from sqlalchemy import select - db repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/delete_cmd.py :36
from sqlalchemy import func, select - db repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/doctor_cmd/repo_checks.py :35
from sqlalchemy import text as _sql_text - db repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/export_cmd.py :154
from sqlalchemy import select - db repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/export_structurizr.py :72
from sqlalchemy.exc import OperationalError - db repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/generate_cmd/engine.py :245
from sqlalchemy import func as sa_func - db repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/init_cmd/persistence.py :76
from sqlalchemy import select
show 28 more
- db repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/overlap_cmd.py :43
from sqlalchemy.exc import SQLAlchemyError - db repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/reindex_cmd.py :48
from sqlalchemy import select - db repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/risk_cmd.py :390
from sqlalchemy.exc import SQLAlchemyError - db repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/saved_cmd.py :376
import sqlite3 - db repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/status_cmd.py :48
from sqlalchemy import func as sa_func - db repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/update_cmd/deterministic.py :67
from sqlalchemy import select as sa_select - db repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/update_cmd/persistence.py :908
from sqlalchemy import select as _sel_dec - db repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/update_cmd/slot_notice.py :76
from sqlalchemy import select - db repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/upgrade_flow.py :437
from sqlalchemy import func as sa_func - db repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/commands/workspace_cmd.py :201
from sqlalchemy import func as sa_func - db repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/helpers.py :50
from sqlalchemy.ext.asyncio import AsyncSession - db repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/hook_ledger.py :55
import sqlite3 - db repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/tool_bridge.py :45
from sqlalchemy.ext.asyncio import AsyncSession, async_sessionmaker - db repowise-dev-repowise-920d1c9/packages/cli/src/repowise/cli/worktree.py :98
import sqlite3 - db repowise-dev-repowise-920d1c9/packages/core/alembic/env.py :18
from sqlalchemy.ext.asyncio import create_async_engine - db repowise-dev-repowise-920d1c9/packages/core/alembic/versions/0001_initial_schema.py :20
import sqlalchemy as sa - db repowise-dev-repowise-920d1c9/packages/core/alembic/versions/0002_git_intelligence_dead_code.py :12
import sqlalchemy as sa - db repowise-dev-repowise-920d1c9/packages/core/alembic/versions/0003_decision_records.py :12
import sqlalchemy as sa - db repowise-dev-repowise-920d1c9/packages/core/alembic/versions/0004_graph_edge_type.py :12
import sqlalchemy as sa - db repowise-dev-repowise-920d1c9/packages/core/alembic/versions/0005_chat_conversations.py :12
import sqlalchemy as sa - db repowise-dev-repowise-920d1c9/packages/core/alembic/versions/0006_git_commit_count_capped.py :16
import sqlalchemy as sa - db repowise-dev-repowise-920d1c9/packages/core/alembic/versions/0007_git_phase2_signals.py :15
import sqlalchemy as sa - db repowise-dev-repowise-920d1c9/packages/core/alembic/versions/0008_git_phase3_rename_merge.py :15
import sqlalchemy as sa - db repowise-dev-repowise-920d1c9/packages/core/alembic/versions/0009_llm_costs.py :12
import sqlalchemy as sa - db repowise-dev-repowise-920d1c9/packages/core/alembic/versions/0010_temporal_hotspot_score.py :15
import sqlalchemy as sa - db repowise-dev-repowise-920d1c9/packages/core/alembic/versions/0011_security_findings.py :15
import sqlalchemy as sa - db repowise-dev-repowise-920d1c9/packages/core/alembic/versions/0012_page_summary.py :17
import sqlalchemy as sa - db repowise-dev-repowise-920d1c9/packages/core/alembic/versions/0013_answer_cache.py :16
import sqlalchemy as sa
337 more not shown — this panel samples each group; the count above is the real total.
tool registrations 11
- get_architecture repowise-dev-repowise-920d1c9/packages/server/src/repowise/server/mcp_server/tool_architecture.py :24
- get_blast_radius repowise-dev-repowise-920d1c9/packages/server/src/repowise/server/mcp_server/tool_blast_radius.py :34
- get_change_risk repowise-dev-repowise-920d1c9/packages/server/src/repowise/server/mcp_server/tool_change_risk.py :118
- get_conformance repowise-dev-repowise-920d1c9/packages/server/src/repowise/server/mcp_server/tool_conformance.py :25
- get_dead_code repowise-dev-repowise-920d1c9/packages/server/src/repowise/server/mcp_server/tool_dead_code.py :255
- get_dependency_path repowise-dev-repowise-920d1c9/packages/server/src/repowise/server/mcp_server/tool_dependency.py :28
- get_execution_flows repowise-dev-repowise-920d1c9/packages/server/src/repowise/server/mcp_server/tool_flows.py :40
- get_overview repowise-dev-repowise-920d1c9/packages/server/src/repowise/server/mcp_server/tool_overview.py :954
- generate_refactoring_code repowise-dev-repowise-920d1c9/packages/server/src/repowise/server/mcp_server/tool_refactoring.py :23
- list_repos repowise-dev-repowise-920d1c9/packages/server/src/repowise/server/mcp_server/tool_repos.py :61
- get_symbol repowise-dev-repowise-920d1c9/packages/server/src/repowise/server/mcp_server/tool_symbol.py :695
declared dependencies 69
- mcp@>=1.0,<2
- httpx@>=0.27,<1
- tree-sitter@>=0.23,<1
- tree-sitter-python@>=0.23,<1
- tree-sitter-typescript@>=0.23,<1
- tree-sitter-javascript@>=0.23,<1
- tree-sitter-go@>=0.23,<1
- tree-sitter-rust@>=0.23,<1
- tree-sitter-java@>=0.23,<1
- tree-sitter-cpp@>=0.23,<1
- tree-sitter-dart@>=0.1,<1
- tree-sitter-kotlin@>=1,<2
show 28 more
- tree-sitter-ruby@>=0.23,<1
- tree-sitter-c-sharp@>=0.23,<1
- tree-sitter-swift@>=0.0.1
- tree-sitter-scala@>=0.23,<1
- tree-sitter-php@>=0.23,<1
- tree-sitter-pascal@>=0.11,<1
- tree-sitter-luau@>=1.2,<2
- tree-sitter-bash@>=0.23,<1
- tree-sitter-gdscript@>=6.1,<7
- tree-sitter-vb-dotnet@>=0.3,<1
- tree-sitter-elixir@>=0.3.5,<1
- tree-sitter-fsharp@>=0.3.11,<1
- tree-sitter-objc@>=3.0.2,<4
- tree-sitter-svelte@>=1,<2
- tree-sitter-html@>=0.23,<1
- sqlglot@>=26,<28
- networkx@>=3.3,<4
- scipy@>=1.11,<2
- jinja2@>=3.1,<4
- pathspec@>=0.12,<1
- structlog@>=24,<25
- sqlalchemy@>=2.0,<3
- aiosqlite@>=0.20,<1
- alembic@>=1.13,<2
- pydantic@>=2.8,<3
- tenacity@>=9,<10
- gitpython@>=3.1,<4
- pyyaml@>=6.0,<7
29 more not shown — this panel samples each group; the count above is the real total.
transport_posture 1
- network-listening, binds all interfaces, no auth detected repowise-dev-repowise-920d1c9/tests/unit/cli/test_mcp_transport.py :277
"""REPOWISE_HOST=0.0.0.0 (no --host flag) → run_mcp receives host='0.0.0.0'."""