Allowlisted files

Only operational docs and config. DB files, credentials, and private config are never shown.

schemas/mission-control.schema.json

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://openclaw.local/schemas/mission-control.schema.json",
  "title": "OpenClaw Mission Control State",
  "type": "object",
  "additionalProperties": false,
  "required": [
    "version",
    "generated_at",
    "desired",
    "observed",
    "health",
    "entities",
    "usage",
    "inbox_summary"
  ],
  "properties": {
    "version": {
      "type": "string"
    },
    "generated_at": {
      "type": "string",
      "format": "date-time"
    },
    "desired": {
      "type": "object",
      "required": [
        "core_system",
        "protected_external_projects",
        "routines",
        "integrations"
      ],
      "properties": {
        "core_system": {
          "type": "string"
        },
        "protected_external_projects": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/protectedProject"
          }
        },
        "routines": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/routine"
          }
        },
        "integrations": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/integration"
          }
        },
        "outputs": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/output"
          }
        }
      }
    },
    "observed": {
      "type": "object",
      "required": [
        "agents",
        "tasks",
        "workflows",
        "routines",
        "integrations",
        "outputs"
      ],
      "properties": {
        "agents": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/agent"
          }
        },
        "subagents": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/subagent"
          }
        },
        "tasks": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/task"
          }
        },
        "workflows": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/workflow"
          }
        },
        "routines": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/routine"
          }
        },
        "cron_jobs": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/cronJob"
          }
        },
        "heartbeats": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/heartbeat"
          }
        },
        "integrations": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/integration"
          }
        },
        "outputs": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/output"
          }
        }
      }
    },
    "health": {
      "type": "object",
      "required": [
        "overall",
        "summary",
        "checks"
      ],
      "properties": {
        "overall": {
          "$ref": "#/$defs/healthLevel"
        },
        "summary": {
          "type": "string"
        },
        "checks": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/healthCheck"
          }
        }
      }
    },
    "entities": {
      "type": "object",
      "required": [
        "agents",
        "subagents",
        "tasks",
        "workflows",
        "routines",
        "cron_jobs",
        "heartbeats",
        "integrations",
        "outputs"
      ],
      "properties": {
        "agents": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/agent"
          }
        },
        "subagents": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/subagent"
          }
        },
        "tasks": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/task"
          }
        },
        "workflows": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/workflow"
          }
        },
        "routines": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/routine"
          }
        },
        "cron_jobs": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/cronJob"
          }
        },
        "heartbeats": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/heartbeat"
          }
        },
        "integrations": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/integration"
          }
        },
        "outputs": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/output"
          }
        }
      }
    },
    "usage": {
      "type": "object",
      "required": [
        "model_usage",
        "costs"
      ],
      "properties": {
        "model_usage": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/modelUsage"
          }
        },
        "costs": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/costRecord"
          }
        }
      }
    },
    "inbox_summary": {
      "type": "object",
      "required": [
        "total",
        "untriaged",
        "triaged",
        "urgent",
        "items"
      ],
      "properties": {
        "total": {
          "type": "integer",
          "minimum": 0
        },
        "untriaged": {
          "type": "integer",
          "minimum": 0
        },
        "triaged": {
          "type": "integer",
          "minimum": 0
        },
        "urgent": {
          "type": "integer",
          "minimum": 0
        },
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/inboxItem"
          }
        }
      }
    }
  },
  "$defs": {
    "healthLevel": {
      "type": "string",
      "enum": [
        "healthy",
        "warning",
        "failed",
        "stale",
        "unknown"
      ]
    },
    "deliveryMode": {
      "type": "string",
      "enum": [
        "Planning",
        "Building",
        "Debugging",
        "Reviewing",
        "Reporting",
        "Monitoring"
      ]
    },
    "domain": {
      "type": "string",
      "enum": [
        "backend",
        "frontend",
        "infra/DevOps",
        "QA/testing",
        "automation",
        "integration",
        "backoffice"
      ]
    },
    "taskStatus": {
      "type": "string",
      "enum": [
        "inbox",
        "triaged",
        "planned",
        "assigned",
        "active",
        "blocked",
        "review",
        "done",
        "archived"
      ]
    },
    "priority": {
      "type": "string",
      "enum": [
        "urgent",
        "high",
        "medium",
        "low",
        "someday"
      ]
    },
    "owner": {
      "type": "string",
      "pattern": "^(Fakker|Subagent:(Backend|Frontend|Infra|QA|Research|Backoffice)|Automation:[A-Za-z0-9_.-]+|Human:Khaled)$"
    },
    "protectedProject": {
      "type": "object",
      "required": [
        "name",
        "status",
        "boundary"
      ],
      "properties": {
        "name": {
          "type": "string"
        },
        "status": {
          "type": "string"
        },
        "boundary": {
          "type": "string"
        },
        "source_of_truth": {
          "type": "string"
        }
      }
    },
    "agent": {
      "type": "object",
      "required": [
        "id",
        "name",
        "role",
        "status",
        "model",
        "mode",
        "health",
        "last_seen"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "role": {
          "type": "string"
        },
        "status": {
          "type": "string"
        },
        "model": {
          "type": "string"
        },
        "mode": {
          "$ref": "#/$defs/deliveryMode"
        },
        "current_task_id": {
          "type": [
            "string",
            "null"
          ]
        },
        "session_key": {
          "type": [
            "string",
            "null"
          ]
        },
        "health": {
          "$ref": "#/$defs/healthLevel"
        },
        "last_seen": {
          "type": "string",
          "format": "date-time"
        }
      }
    },
    "subagent": {
      "allOf": [
        {
          "$ref": "#/$defs/agent"
        },
        {
          "type": "object",
          "properties": {
            "parent_agent_id": {
              "type": "string"
            },
            "scope": {
              "type": "string"
            }
          }
        }
      ]
    },
    "task": {
      "type": "object",
      "required": [
        "id",
        "title",
        "domain",
        "mode",
        "status",
        "priority",
        "owner",
        "expected_output"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "title": {
          "type": "string"
        },
        "domain": {
          "$ref": "#/$defs/domain"
        },
        "mode": {
          "$ref": "#/$defs/deliveryMode"
        },
        "status": {
          "$ref": "#/$defs/taskStatus"
        },
        "priority": {
          "$ref": "#/$defs/priority"
        },
        "owner": {
          "$ref": "#/$defs/owner"
        },
        "repo_path": {
          "type": [
            "string",
            "null"
          ]
        },
        "branch": {
          "type": [
            "string",
            "null"
          ]
        },
        "blocker": {
          "type": [
            "string",
            "null"
          ]
        },
        "dependencies": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "test_status": {
          "type": [
            "string",
            "null"
          ]
        },
        "expected_output": {
          "type": "string",
          "minLength": 1
        }
      }
    },
    "workflow": {
      "type": "object",
      "required": [
        "id",
        "name",
        "status",
        "owner",
        "steps",
        "expected_output"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "status": {
          "$ref": "#/$defs/taskStatus"
        },
        "owner": {
          "$ref": "#/$defs/owner"
        },
        "current_step": {
          "type": [
            "string",
            "null"
          ]
        },
        "steps": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "dependencies": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "expected_output": {
          "type": "string"
        }
      }
    },
    "routine": {
      "type": "object",
      "required": [
        "id",
        "name",
        "kind",
        "desired_schedule",
        "status",
        "health"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "kind": {
          "type": "string",
          "enum": [
            "routine",
            "cron",
            "heartbeat"
          ]
        },
        "desired_schedule": {
          "type": "string"
        },
        "last_run": {
          "type": [
            "string",
            "null"
          ],
          "format": "date-time"
        },
        "next_run": {
          "type": [
            "string",
            "null"
          ],
          "format": "date-time"
        },
        "status": {
          "type": "string"
        },
        "health": {
          "$ref": "#/$defs/healthLevel"
        }
      }
    },
    "cronJob": {
      "allOf": [
        {
          "$ref": "#/$defs/routine"
        },
        {
          "type": "object",
          "properties": {
            "cron_expr": {
              "type": "string"
            },
            "target": {
              "type": "string"
            },
            "failure_count": {
              "type": "integer",
              "minimum": 0
            }
          }
        }
      ]
    },
    "heartbeat": {
      "allOf": [
        {
          "$ref": "#/$defs/routine"
        },
        {
          "type": "object",
          "properties": {
            "checks_performed": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "finding": {
              "type": [
                "string",
                "null"
              ]
            }
          }
        }
      ]
    },
    "integration": {
      "type": "object",
      "required": [
        "id",
        "name",
        "type",
        "purpose",
        "status",
        "health",
        "boundary"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "type": {
          "type": "string"
        },
        "purpose": {
          "type": "string"
        },
        "status": {
          "type": "string"
        },
        "health": {
          "$ref": "#/$defs/healthLevel"
        },
        "boundary": {
          "type": "string"
        },
        "credential_ref": {
          "type": [
            "string",
            "null"
          ]
        },
        "last_check": {
          "type": [
            "string",
            "null"
          ],
          "format": "date-time"
        }
      }
    },
    "output": {
      "type": "object",
      "required": [
        "id",
        "type",
        "trigger",
        "owner",
        "status",
        "save_location"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "type": {
          "type": "string"
        },
        "trigger": {
          "type": "string"
        },
        "owner": {
          "$ref": "#/$defs/owner"
        },
        "status": {
          "type": "string"
        },
        "save_location": {
          "type": "string"
        },
        "generated_at": {
          "type": [
            "string",
            "null"
          ],
          "format": "date-time"
        }
      }
    },
    "modelUsage": {
      "type": "object",
      "required": [
        "id",
        "agent_id",
        "model",
        "input_tokens",
        "output_tokens",
        "total_tokens"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "agent_id": {
          "type": "string"
        },
        "task_id": {
          "type": [
            "string",
            "null"
          ]
        },
        "model": {
          "type": "string"
        },
        "input_tokens": {
          "type": "integer",
          "minimum": 0
        },
        "output_tokens": {
          "type": "integer",
          "minimum": 0
        },
        "total_tokens": {
          "type": "integer",
          "minimum": 0
        }
      }
    },
    "costRecord": {
      "type": "object",
      "required": [
        "id",
        "usage_id",
        "estimated_cost",
        "currency"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "usage_id": {
          "type": "string"
        },
        "estimated_cost": {
          "type": "number",
          "minimum": 0
        },
        "currency": {
          "type": "string"
        },
        "time_window": {
          "type": "string"
        }
      }
    },
    "inboxItem": {
      "type": "object",
      "required": [
        "id",
        "title",
        "status",
        "priority",
        "classification",
        "owner",
        "expected_output"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "title": {
          "type": "string"
        },
        "status": {
          "$ref": "#/$defs/taskStatus"
        },
        "priority": {
          "$ref": "#/$defs/priority"
        },
        "classification": {
          "type": "string"
        },
        "owner": {
          "$ref": "#/$defs/owner"
        },
        "expected_output": {
          "type": "string"
        }
      }
    },
    "healthCheck": {
      "type": "object",
      "required": [
        "id",
        "entity_type",
        "entity_id",
        "health",
        "message"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "entity_type": {
          "type": "string"
        },
        "entity_id": {
          "type": "string"
        },
        "health": {
          "$ref": "#/$defs/healthLevel"
        },
        "message": {
          "type": "string"
        }
      }
    }
  }
}