MCPcopy Create free account
hub / github.com/ScriptedAlchemy/tracedecay / healthcheck

Method healthcheck

src/agents/codex.rs:198–228  ·  view source on GitHub ↗
(&self, dc: &mut DoctorCounters, ctx: &HealthcheckContext)

Source from the content-addressed store, hash-verified

196 }
197
198 fn healthcheck(&self, dc: &mut DoctorCounters, ctx: &HealthcheckContext) {
199 eprintln!("\n\x1b[1mCodex CLI integration\x1b[0m");
200 let local_plugin_dir = codex_repo_plugin_install_dir(&ctx.project_path);
201 if local_plugin_dir.join(".codex-plugin/plugin.json").exists() {
202 doctor_check_plugin_dir(
203 dc,
204 &local_plugin_dir,
205 CodexBundlePolicy::for_scope(InstallScope::ProjectLocal),
206 &ctx.home,
207 );
208 doctor_check_marketplace_entry(
209 dc,
210 &codex_repo_marketplace_path(&ctx.project_path),
211 "repo marketplace",
212 "./plugins/tracedecay",
213 "tracedecay install --local --agent codex",
214 );
215 // Repo-local bundles ship no lifecycle hooks by design; hooks come
216 // from the personal plugin. Without one, no session/tool hooks run.
217 if !codex_plugin_manifest_path(&ctx.home).exists()
218 && codex_plugin_cached_install_dirs(&ctx.home).is_empty()
219 {
220 dc.warn(
221 "repo-local Codex bundles ship no lifecycle hooks — run `tracedecay install --agent codex` to add the personal plugin (session hooks, transcript ingest)",
222 );
223 }
224 } else {
225 doctor_check_plugin(dc, &ctx.home);
226 }
227 doctor_suggest_native_memories_off(dc, &ctx.home);
228 }
229
230 fn is_detected(&self, home: &Path) -> bool {
231 home.join(".codex").is_dir()

Callers

nothing calls this directly

Calls 11

doctor_check_plugin_dirFunction · 0.85
existsMethod · 0.80
warnMethod · 0.80
doctor_check_pluginFunction · 0.70
is_emptyMethod · 0.45

Tested by

no test coverage detected