← Files get-fableARCHIVED FILE
openapi.json
2.31 KB · Oct 3, 2026 · 06:31 UTC
{
"openapi": "3.1.0",
"info": {
"title": "get-fable API Proxy",
"description": "Coding lifecycle governance, routing, state tracking, and spark next-move prediction.",
"version": "1.3.0"
},
"servers": [
{
"url": "http://localhost:8080"
}
],
"paths": {
"/v1/route": {
"post": {
"summary": "Route a task into the Fable lifecycle",
"operationId": "routeTask",
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"task": { "type": "string" },
"apply": { "type": "boolean" }
},
"required": ["task"]
}
}
}
},
"responses": {
"200": {
"description": "Routing decision",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"selectedSkill": { "type": "string" },
"confidence": { "type": "number" },
"reasons": { "type": "array", "items": { "type": "string" } }
}
}
}
}
}
}
}
},
"/v1/spark": {
"get": {
"summary": "Predict the atomic next move from current state",
"operationId": "predictSpark",
"parameters": [
{
"name": "intent",
"in": "query",
"required": false,
"schema": { "type": "string" }
}
],
"responses": {
"200": {
"description": "Spark prediction result",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"suggestion": { "type": "string", "nullable": true },
"reasonCode": { "type": "string" },
"confidence": { "type": "number" },
"source": { "type": "string" },
"silent": { "type": "boolean" }
}
}
}
}
}
}
}
}
}
}
SHA-256: 42ca73b1e55958ec5ae5e05f21ead3d79b00a0b479bcca68bd18e38c5ee9c36b