Code Quality Report¶
Generated: 2026-04-05 05:20 UTC
Lines of Code¶
| Files | Code | Comment | Blank | Total | |
|---|---|---|---|---|---|
| Source | 65 | 5 727 | 1 444 | 888 | 8 059 |
| Tests | 18 | 3 200 | 401 | 740 | 4 341 |
| Combined | 83 | 8 927 | 1 845 | 1 628 | 12 400 |
- Comment/code ratio: 25%
- Test/source ratio: 55.9%
Source by module (click to expand)
| Module | Files | Code | Comment | Blank |
|---|---|---|---|---|
terok_agent/ |
65 | 5 727 | 1 444 | 888 |
terok_agent/_util/ |
4 | 45 | 22 | 19 |
terok_agent/_util/__init__.py |
— | 9 | 3 | 3 |
terok_agent/_util/_fs.py |
— | 23 | 3 | 4 |
terok_agent/_util/_podman.py |
— | 5 | 8 | 4 |
terok_agent/_util/_yaml.py |
— | 8 | 8 | 8 |
terok_agent/resources/ |
44 | 1 796 | 478 | 281 |
terok_agent/resources/agents/ |
13 | 328 | 48 | 71 |
terok_agent/resources/instructions/ |
2 | 36 | 3 | 19 |
terok_agent/resources/scripts/ |
23 | 1 378 | 415 | 183 |
terok_agent/resources/scripts/mistral-model-sync.py |
— | 269 | 20 | 2 |
terok_agent/resources/templates/ |
1 | 0 | 3 | 1 |
terok_agent/resources/tmux/ |
1 | 0 | 3 | 1 |
terok_agent/resources/toad-agents/ |
3 | 54 | 3 | 5 |
terok_agent/__init__.py |
— | 110 | 65 | 24 |
terok_agent/agent_config.py |
— | 22 | 23 | 5 |
terok_agent/agents.py |
— | 385 | 84 | 44 |
terok_agent/auth.py |
— | 305 | 53 | 51 |
terok_agent/build.py |
— | 306 | 109 | 55 |
terok_agent/cli.py |
— | 59 | 13 | 18 |
terok_agent/commands.py |
— | 252 | 25 | 56 |
terok_agent/config_stack.py |
— | 97 | 42 | 31 |
terok_agent/credential_extractors.py |
— | 145 | 56 | 37 |
terok_agent/doctor.py |
— | 180 | 58 | 50 |
terok_agent/headless_providers.py |
— | 650 | 71 | 24 |
terok_agent/instructions.py |
— | 63 | 41 | 17 |
terok_agent/paths.py |
— | 57 | 4 | 1 |
terok_agent/proxy_commands.py |
— | 202 | 23 | 20 |
terok_agent/proxy_config.py |
— | 87 | 28 | 5 |
terok_agent/roster.py |
— | 458 | 121 | 74 |
terok_agent/runner.py |
— | 508 | 128 | 76 |
Architecture¶
Module Dependency Graph¶
graph TD
terok_agent.headless_providers --> terok_agent.agent_config
terok_agent.config_stack --> terok_agent._util
terok_agent.instructions --> terok_agent.agent_config
terok_agent.agents --> terok_agent._util
terok_agent.agents --> terok_agent.headless_providers
terok_agent.auth --> terok_agent._util
terok_agent.auth --> terok_agent.credential_extractors
terok_agent.auth --> terok_agent.paths
terok_agent.proxy_config --> terok_agent.paths
terok_agent.proxy_config --> terok_agent.roster
terok_agent.roster --> terok_agent._util
terok_agent.roster --> terok_agent.auth
terok_agent.roster --> terok_agent.config_stack
terok_agent.roster --> terok_agent.headless_providers
terok_agent.roster --> terok_agent.paths
terok_agent.runner --> terok_agent.agents
terok_agent.runner --> terok_agent.build
terok_agent.runner --> terok_agent.headless_providers
terok_agent.runner --> terok_agent.instructions
terok_agent.runner --> terok_agent.paths
terok_agent.runner --> terok_agent.roster
terok_agent.proxy_commands --> terok_agent.paths
terok_agent.proxy_commands --> terok_agent.roster
terok_agent.commands --> terok_agent.auth
terok_agent.commands --> terok_agent.build
terok_agent.commands --> terok_agent.paths
terok_agent.commands --> terok_agent.proxy_config
terok_agent.commands --> terok_agent.roster
terok_agent.commands --> terok_agent.runner
terok_agent.cli --> terok_agent.commands
terok_agent.cli --> terok_agent.proxy_commands
terok_agent --> terok_agent.agent_config
terok_agent --> terok_agent.agents
terok_agent --> terok_agent.auth
terok_agent --> terok_agent.build
terok_agent --> terok_agent.commands
terok_agent --> terok_agent.config_stack
terok_agent --> terok_agent.credential_extractors
terok_agent --> terok_agent.headless_providers
terok_agent --> terok_agent.instructions
terok_agent --> terok_agent.paths
terok_agent --> terok_agent.proxy_commands
terok_agent --> terok_agent.roster
terok_agent --> terok_agent.runner
terok_agent.paths
terok_agent._util
terok_agent.resources
terok_agent.agent_config
terok_agent.credential_extractors
terok_agent.build
Module Boundaries¶
18 modules, 44 dependency edges — all boundaries validated.
Module Summary¶
18 modules (click to expand)
| Module | Deps | Description |
|---|---|---|
terok_agent.paths |
0 | Path resolution — standalone XDG/FHS helpers |
terok_agent._util |
0 | Vendored utilities — standalone, no internal deps |
terok_agent.resources |
0 | Bundled resources — data files |
terok_agent.headless_providers |
1 | Headless provider registry + dispatch |
terok_agent.config_stack |
1 | Config stack — generic layered resolution |
terok_agent.agent_config |
0 | Provider-aware config value extraction |
terok_agent.instructions |
1 | Instruction resolution (resources accessed via importlib.resources, not import) |
terok_agent.agents |
2 | Agent config dir preparation + wrapper generation |
terok_agent.auth |
3 | Auth flows |
terok_agent.proxy_config |
2 | Post-auth shared config patching (proxy URL writes) |
terok_agent.roster |
5 | YAML agent roster — loads bundled + user agent definitions |
terok_agent.credential_extractors |
0 | Credential extractors — per-provider credential file parsers |
terok_agent.build |
0 | Build resource staging — standalone, reads from resources only |
terok_agent.runner |
6 | Agent runner facade — composes sandbox + agent config + container launch |
terok_agent.proxy_commands |
2 | Credential proxy CLI commands — wraps sandbox lifecycle + route generation |
terok_agent.commands |
6 | Command registry — defines all CLI commands |
terok_agent.cli |
2 | CLI entry point — wires command registry to argparse |
terok_agent |
13 | Package root — public API re-exports + roster bootstrap |
Test Coverage¶
Coverage is collected from unit tests in CI and uploaded to Codecov.
Coverage Treemap¶
Each rectangle represents a source file. Size is proportional to the number of lines; colour shows the coverage percentage (green = high, red = low).
Cognitive Complexity¶
Threshold: 15 (functions above this are listed below)
- Functions analyzed: 176
- Median complexity: 2.0 · Average: 4.7 · Max: 69
- Within threshold (15): 93% (163/176)
0– 3 │ ██████████████████████████████ 116 (65.9%)
4– 6 │ █████ 19 (10.8%)
7– 9 │ ████ 16 ( 9.1%)
10– 12 │ ██ 7 ( 4.0%)
13– 15 │ █ 5 ( 2.8%) ◄ threshold
16– 18 │ █ 2 ( 1.1%)
19– 21 │ █ 4 ( 2.3%)
22– 25 │ █ 2 ( 1.1%)
26+ │ █ 5 ( 2.8%)
13 functions exceeding threshold:
| Complexity | Function | File |
|---|---|---|
| 69 | _write_session_hook |
src/terok_agent/agents.py |
| 31 | _inject_opencode_instructions |
src/terok_agent/agents.py |
| 31 | load_roster |
src/terok_agent/roster.py |
| 30 | AgentRunner::_run |
src/terok_agent/runner.py |
| 29 | _make_phantom_token_checks |
src/terok_agent/doctor.py |
| 24 | _subagents_to_json |
src/terok_agent/agents.py |
| 23 | _make_credential_file_checks |
src/terok_agent/doctor.py |
| 21 | deep_merge |
src/terok_agent/config_stack.py |
| 21 | read_config_models |
src/terok_agent/resources/scripts/mistral-model-sync.py |
| 19 | build_base_images |
src/terok_agent/build.py |
| 19 | extract_claude_oauth |
src/terok_agent/credential_extractors.py |
| 18 | get_api_key |
src/terok_agent/resources/scripts/mistral-model-sync.py |
| 18 | AgentRunner::_credential_proxy_env |
src/terok_agent/runner.py |
Dead Code Analysis¶
No dead code found at 80% confidence threshold.
Docstring Coverage¶
- Needed: 23; Found: 22; Missing: 1; Coverage: 95.7%
- Needed: 22; Found: 21; Missing: 1; Coverage: 95.5%
- Needed: 235 - Found: 233 - Missing: 2
- Total coverage: 99.1% - Grade: Excellent
Generated by scc, complexipy, vulture, tach, and docstr-coverage.