run_doctor

Check the machine the service runs on for what its agents need: tmux and its shell, the config, the harness binaries, the hooks and worktree directories, the database and its schema.

Doctorread-onlyidempotentMCP tool

Each check answers ok, warn, fail or skip with what was found and what to do about it. This is what komrad doctor asks an engine for, and it is how to find out whether an engine is fit to run agents without a shell on it.

Calling it#

curl -X POST http://127.0.0.1:8787/doctor.v1.DoctorService/RunDoctor \
  -H 'Content-Type: application/json' \
  -d '{}'

Request#

Empty#

No fields.

Response#

RunDoctorResponse#

FieldTypeDescription
findingslist of Finding

Every check the service made, in the order it made them.

summarySummary

The findings counted up.

Types#

Finding#

FieldTypeDescription
namestring

Which check this is, such as database or tmux shell.

descriptionstring

What the check is for, in a sentence.

statusstring

How it came out: ok, warn, fail or skip.

detailstring

What was found, such as the version read or the path checked, when there is something to say.

codestring

A stable code for what went wrong, such as db_unreachable, empty when nothing did.

errorstring

What went wrong, as the check worded it, empty when nothing did.

fixstring

What to do about it, empty when there is nothing to do.

Summary#

FieldTypeDescription
okint32

How many checks passed.

warnint32

How many passed with something worth a look.

failint32

How many failed.

skipint32

How many were not made because one they need did not pass.

totalint32

How many checks there were.

healthybool

Whether nothing failed.