openapi: 3.1.0 info: title: Fleet-RLM Lite API version: 0.8.0 paths: /health: get: tags: - health summary: Health operationId: health_health_get responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/Health' /sessions: get: tags: - sessions summary: List Sessions operationId: list_sessions_sessions_get responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/Sessions' /models: get: tags: - sessions summary: List Models operationId: list_models_models_get parameters: - name: scope in: query required: false schema: type: string default: system.ai title: Scope responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/Models' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /sessions/{session_id}/config: get: tags: - sessions summary: Session Config operationId: session_config_sessions__session_id__config_get parameters: - name: session_id in: path required: true schema: type: string title: Session Id responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/SessionConfig' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /sessions/{session_id}/model: put: tags: - sessions summary: Select Model operationId: select_model_sessions__session_id__model_put parameters: - name: session_id in: path required: true schema: type: string title: Session Id requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ModelRequest' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ModelSelection' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /sessions/{session_id}/mode: get: tags: - sessions summary: Get Mode operationId: get_mode_sessions__session_id__mode_get parameters: - name: session_id in: path required: true schema: type: string title: Session Id responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/Mode' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' put: tags: - sessions summary: Set Mode operationId: set_mode_sessions__session_id__mode_put parameters: - name: session_id in: path required: true schema: type: string title: Session Id requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ModeRequest' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/Mode' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /sessions/{session_id}/history: get: tags: - sessions summary: Get History operationId: get_history_sessions__session_id__history_get parameters: - name: session_id in: path required: true schema: type: string title: Session Id responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/History' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /sessions/{session_id}/turns/{turn_id}: get: tags: - sessions summary: Turn Status operationId: turn_status_sessions__session_id__turns__turn_id__get parameters: - name: turn_id in: path required: true schema: type: string title: Turn Id - name: session_id in: path required: true schema: type: string title: Session Id responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/TurnStatus' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /sessions/{session_id}/context: put: tags: - sessions summary: Select Context operationId: select_context_sessions__session_id__context_put parameters: - name: session_id in: path required: true schema: type: string title: Session Id requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ContextRequest' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ContextSelected' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' delete: tags: - sessions summary: Clear Context operationId: clear_context_sessions__session_id__context_delete parameters: - name: session_id in: path required: true schema: type: string title: Session Id responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/Status' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /sessions/{session_id}/reload: post: tags: - sessions summary: Reload Program operationId: reload_program_sessions__session_id__reload_post parameters: - name: session_id in: path required: true schema: type: string title: Session Id - name: approved in: query required: false schema: type: boolean default: false title: Approved responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/Status' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /sessions/{session_id}/workspace/tree: get: tags: - workspace summary: List Files operationId: list_files_sessions__session_id__workspace_tree_get parameters: - name: session_id in: path required: true schema: type: string title: Session Id responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/Files' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /sessions/{session_id}/files: get: tags: - workspace summary: List Files operationId: list_files_sessions__session_id__files_get parameters: - name: session_id in: path required: true schema: type: string title: Session Id responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/Files' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /sessions/{session_id}/workspace/stat/{rel_path}: get: tags: - workspace summary: Workspace Stat operationId: workspace_stat_sessions__session_id__workspace_stat__rel_path__get parameters: - name: session_id in: path required: true schema: type: string title: Session Id - name: rel_path in: path required: true schema: type: string title: Rel Path responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/FileStat' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /sessions/{session_id}/workspace/files/{rel_path}: get: tags: - workspace summary: Read Workspace File operationId: read_workspace_file_sessions__session_id__workspace_files__rel_path__get parameters: - name: session_id in: path required: true schema: type: string title: Session Id - name: rel_path in: path required: true schema: type: string title: Rel Path responses: '200': description: Successful Response '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' put: tags: - workspace summary: Write Workspace File operationId: write_workspace_file_sessions__session_id__workspace_files__rel_path__put parameters: - name: session_id in: path required: true schema: type: string title: Session Id - name: rel_path in: path required: true schema: type: string title: Rel Path requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/WorkspaceWriteRequest' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/FileWritten' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' delete: tags: - workspace summary: Delete Workspace File operationId: delete_workspace_file_sessions__session_id__workspace_files__rel_path__delete parameters: - name: session_id in: path required: true schema: type: string title: Session Id - name: rel_path in: path required: true schema: type: string title: Rel Path responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/Deleted' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /sessions/{session_id}/attach: post: tags: - workspace summary: Attach File operationId: attach_file_sessions__session_id__attach_post parameters: - name: session_id in: path required: true schema: type: string title: Session Id requestBody: required: true content: multipart/form-data: schema: $ref: '#/components/schemas/Body_attach_file_sessions__session_id__attach_post' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/Attached' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /sessions/{session_id}/memory: get: tags: - memory summary: List Memory operationId: list_memory_sessions__session_id__memory_get parameters: - name: session_id in: path required: true schema: type: string title: Session Id - name: q in: query required: false schema: type: string default: '' title: Q responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/Memories' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /sessions/{session_id}/memory/{memory_id}: put: tags: - memory summary: Put Memory operationId: put_memory_sessions__session_id__memory__memory_id__put parameters: - name: memory_id in: path required: true schema: type: string title: Memory Id - name: session_id in: path required: true schema: type: string title: Session Id requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/MemoryRequest' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/MemorySaved' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' delete: tags: - memory summary: Remove Memory operationId: remove_memory_sessions__session_id__memory__memory_id__delete parameters: - name: memory_id in: path required: true schema: type: string title: Memory Id - name: session_id in: path required: true schema: type: string title: Session Id responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/Deleted' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /skills: get: tags: - skills summary: Get Skills Catalog operationId: get_skills_catalog_skills_get parameters: - name: session_id in: query required: false schema: type: string default: default title: Session Id responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/Catalog' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /skills/pull: post: tags: - skills summary: Pull Skills To Local operationId: pull_skills_to_local_skills_pull_post parameters: - name: session_id in: query required: false schema: type: string default: default title: Session Id responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/Exported' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /skills/push: post: tags: - skills summary: Push Skills operationId: push_skills_skills_push_post parameters: - name: session_id in: query required: false schema: type: string default: default title: Session Id responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/Pushed' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /sessions/{session_id}/turn: post: tags: - turns summary: Stream Turn operationId: stream_turn_sessions__session_id__turn_post parameters: - name: session_id in: path required: true schema: type: string title: Session Id requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/TurnRequest' responses: '200': description: Server-Sent Events for Turn status, activity, completion, or failure. content: text/event-stream: itemSchema: type: object properties: data: type: string event: type: string id: type: string retry: type: integer minimum: 0 schema: type: string '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' components: schemas: Attached: properties: mounted_path: type: string title: Mounted Path rel_path: type: string title: Rel Path type: object required: - mounted_path - rel_path title: Attached Body_attach_file_sessions__session_id__attach_post: properties: file: type: string contentMediaType: application/octet-stream title: File type: object required: - file title: Body_attach_file_sessions__session_id__attach_post Catalog: properties: catalog_xml: type: string title: Catalog Xml type: object required: - catalog_xml title: Catalog ContextRequest: properties: path: type: string maxLength: 1024 minLength: 1 title: Path description: type: string maxLength: 2000 title: Description default: '' type: object required: - path title: ContextRequest ContextSelected: properties: path: type: string title: Path size_bytes: type: integer title: Size Bytes sha256: type: string title: Sha256 type: object required: - path - size_bytes - sha256 title: ContextSelected Deleted: properties: deleted: type: string title: Deleted type: object required: - deleted title: Deleted Exported: properties: exported: items: type: string type: array title: Exported type: object required: - exported title: Exported FileStat: properties: path: type: string title: Path size_bytes: type: integer title: Size Bytes sha256: type: string title: Sha256 type: object required: - path - size_bytes - sha256 title: FileStat FileWritten: properties: path: type: string title: Path size_bytes: type: integer title: Size Bytes sha256: type: string title: Sha256 mounted_path: type: string title: Mounted Path type: object required: - path - size_bytes - sha256 - mounted_path title: FileWritten Files: properties: session_id: type: string title: Session Id files: items: type: string type: array title: Files artifacts: items: type: string type: array title: Artifacts type: object required: - session_id - files - artifacts title: Files HTTPValidationError: properties: detail: items: $ref: '#/components/schemas/ValidationError' type: array title: Detail type: object title: HTTPValidationError Health: properties: status: type: string title: Status version: type: string title: Version type: object required: - status - version title: Health History: properties: session_id: type: string title: Session Id turns: items: additionalProperties: true type: object type: array title: Turns type: object required: - session_id - turns title: History Limits: properties: lm_calls: type: integer title: Lm Calls depth: type: integer title: Depth children: type: integer title: Children active_children: type: integer title: Active Children timeout_seconds: type: integer title: Timeout Seconds type: object required: - lm_calls - depth - children - active_children - timeout_seconds title: Limits Memories: properties: memories: items: additionalProperties: true type: object type: array title: Memories type: object required: - memories title: Memories MemoryRequest: properties: content: type: string maxLength: 10000 minLength: 1 title: Content kind: type: string pattern: ^(observation|preference|hypothesis|procedure)$ title: Kind default: observation sources: additionalProperties: type: string type: object maxProperties: 100 title: Sources reviewed: type: boolean title: Reviewed default: false type: object required: - content title: MemoryRequest MemorySaved: properties: memory_id: type: string title: Memory Id type: object required: - memory_id title: MemorySaved Mode: properties: mode: type: string title: Mode type: object required: - mode title: Mode ModeRequest: properties: mode: type: string pattern: ^(rlm|flex|hybrid)$ title: Mode type: object required: - mode title: ModeRequest ModelRequest: properties: role: type: string pattern: ^(root|sub)$ title: Role default: root model: type: string maxLength: 300 minLength: 1 pattern: ^openai/[A-Za-z0-9_-]+\.[A-Za-z0-9_-]+\.[A-Za-z0-9_.-]+$ title: Model type: object required: - model title: ModelRequest ModelSelection: properties: role: type: string title: Role model: type: string title: Model type: object required: - role - model title: ModelSelection Models: properties: scope: type: string title: Scope models: items: type: string type: array title: Models type: object required: - scope - models title: Models Pushed: properties: pushed: type: integer title: Pushed type: object required: - pushed title: Pushed SessionConfig: properties: mode: type: string title: Mode models: additionalProperties: type: string type: object title: Models context: anyOf: - additionalProperties: true type: object - type: 'null' title: Context configuration: additionalProperties: true type: object title: Configuration limits: $ref: '#/components/schemas/Limits' type: object required: - mode - models - context - configuration - limits title: SessionConfig SessionSummary: properties: session_id: type: string title: Session Id updated_at: type: string format: date-time title: Updated At turn_count: type: integer title: Turn Count type: object required: - session_id - updated_at - turn_count title: SessionSummary Sessions: properties: sessions: items: $ref: '#/components/schemas/SessionSummary' type: array title: Sessions type: object required: - sessions title: Sessions Status: properties: status: type: string title: Status type: object required: - status title: Status TurnRequest: properties: task: type: string maxLength: 100000 minLength: 1 title: Task idempotency_key: anyOf: - type: string maxLength: 128 - type: 'null' title: Idempotency Key type: object required: - task title: TurnRequest description: User prompt sent to one Session's Fleet engine. TurnStatus: properties: turn_id: type: string title: Turn Id status: type: string title: Status result: additionalProperties: true type: object title: Result updated_at: type: string title: Updated At type: object required: - turn_id - status - result - updated_at title: TurnStatus ValidationError: properties: loc: items: anyOf: - type: string - type: integer type: array title: Location msg: type: string title: Message type: type: string title: Error Type input: title: Input ctx: type: object title: Context type: object required: - loc - msg - type title: ValidationError WorkspaceWriteRequest: properties: content: anyOf: - type: string maxLength: 25000000 - type: 'null' title: Content content_base64: anyOf: - type: string maxLength: 34000000 - type: 'null' title: Content Base64 type: object title: WorkspaceWriteRequest