Skip to main content

eval_magic/adapters/
mod.rs

1//! The harness adapter layer.
2//!
3//! [`harness`] defines the [`HarnessAdapter`] trait — the single API generic
4//! run-mode code uses to reach harness-specific behavior. The per-harness
5//! session renderers + transcript parsers it delegates to live in the sibling
6//! submodules, plus plugin-shadow detection. The submodules are re-exported
7//! flat so downstream code writes `crate::adapters::<fn>`.
8
9mod claude_cli;
10pub mod claude_code_session;
11pub mod claude_code_transcript;
12pub mod claude_stream_json;
13mod cli_command;
14mod codex_cli;
15pub mod codex_session;
16pub mod codex_transcript;
17pub mod harness;
18pub mod opencode_session;
19pub mod plugin_shadow;
20
21pub use harness::{
22    ClaudeCodeAdapter, CliDispatchContext, CliJudgeContext, CliManifestContext, CodexAdapter,
23    HEADLESS_RUNBOOK_TEMPLATE, HarnessAdapter, OpenCodeAdapter, adapter_for,
24};
25
26pub use claude_code_session::{
27    render_available_skills_block, render_plan_mode_context, resolve_subagents_dir_for_session,
28    slugify_project_path,
29};
30pub use claude_code_transcript::{
31    SubagentEntry, SubagentMeta, TranscriptSummary, find_by_description, list_subagents,
32    parse_transcript, parse_transcript_full,
33};
34pub use claude_stream_json::{parse_claude_stream_json, parse_claude_stream_json_full};
35pub use codex_session::{render_codex_available_skills_block, render_codex_plan_mode_context};
36pub use codex_transcript::{parse_codex_events, parse_codex_events_full};
37pub use opencode_session::{
38    render_opencode_available_skills_block, render_opencode_plan_mode_context,
39};
40pub use plugin_shadow::{
41    PluginShadowReport, ShadowSource, config_dir_from_env, detect_plugin_shadows,
42    format_shadow_banner, resolve_config_dir, shadow_validity_warnings,
43};