{
  "version": 3,
  "pages404": true,
  "caseSensitive": false,
  "basePath": "",
  "redirects": [
    {
      "source": "/:path+/",
      "destination": "/:path+",
      "internal": true,
      "statusCode": 308,
      "regex": "^(?:/((?:[^/]+?)(?:/(?:[^/]+?))*))/$"
    }
  ],
  "headers": [],
  "rewrites": {
    "beforeFiles": [],
    "afterFiles": [],
    "fallback": []
  },
  "dynamicRoutes": [
    {
      "page": "/api/concept-features/[id]",
      "regex": "^/api/concept\\-features/([^/]+?)(?:/)?$",
      "routeKeys": {
        "nxtPid": "nxtPid"
      },
      "namedRegex": "^/api/concept\\-features/(?<nxtPid>[^/]+?)(?:/)?$"
    },
    {
      "page": "/api/concept-features/[id]/assess",
      "regex": "^/api/concept\\-features/([^/]+?)/assess(?:/)?$",
      "routeKeys": {
        "nxtPid": "nxtPid"
      },
      "namedRegex": "^/api/concept\\-features/(?<nxtPid>[^/]+?)/assess(?:/)?$"
    },
    {
      "page": "/api/concepts/[name]",
      "regex": "^/api/concepts/([^/]+?)(?:/)?$",
      "routeKeys": {
        "nxtPname": "nxtPname"
      },
      "namedRegex": "^/api/concepts/(?<nxtPname>[^/]+?)(?:/)?$"
    },
    {
      "page": "/api/containers/[name]",
      "regex": "^/api/containers/([^/]+?)(?:/)?$",
      "routeKeys": {
        "nxtPname": "nxtPname"
      },
      "namedRegex": "^/api/containers/(?<nxtPname>[^/]+?)(?:/)?$"
    },
    {
      "page": "/api/containers/[name]/action",
      "regex": "^/api/containers/([^/]+?)/action(?:/)?$",
      "routeKeys": {
        "nxtPname": "nxtPname"
      },
      "namedRegex": "^/api/containers/(?<nxtPname>[^/]+?)/action(?:/)?$"
    },
    {
      "page": "/api/containers/[name]/logs",
      "regex": "^/api/containers/([^/]+?)/logs(?:/)?$",
      "routeKeys": {
        "nxtPname": "nxtPname"
      },
      "namedRegex": "^/api/containers/(?<nxtPname>[^/]+?)/logs(?:/)?$"
    },
    {
      "page": "/api/examples/[...path]",
      "regex": "^/api/examples/(.+?)(?:/)?$",
      "routeKeys": {
        "nxtPpath": "nxtPpath"
      },
      "namedRegex": "^/api/examples/(?<nxtPpath>.+?)(?:/)?$"
    },
    {
      "page": "/api/preferences/[name]",
      "regex": "^/api/preferences/([^/]+?)(?:/)?$",
      "routeKeys": {
        "nxtPname": "nxtPname"
      },
      "namedRegex": "^/api/preferences/(?<nxtPname>[^/]+?)(?:/)?$"
    },
    {
      "page": "/api/prompts/[name]",
      "regex": "^/api/prompts/([^/]+?)(?:/)?$",
      "routeKeys": {
        "nxtPname": "nxtPname"
      },
      "namedRegex": "^/api/prompts/(?<nxtPname>[^/]+?)(?:/)?$"
    },
    {
      "page": "/api/tasks/[id]",
      "regex": "^/api/tasks/([^/]+?)(?:/)?$",
      "routeKeys": {
        "nxtPid": "nxtPid"
      },
      "namedRegex": "^/api/tasks/(?<nxtPid>[^/]+?)(?:/)?$"
    },
    {
      "page": "/api/tasks/[id]/output/[file]",
      "regex": "^/api/tasks/([^/]+?)/output/([^/]+?)(?:/)?$",
      "routeKeys": {
        "nxtPid": "nxtPid",
        "nxtPfile": "nxtPfile"
      },
      "namedRegex": "^/api/tasks/(?<nxtPid>[^/]+?)/output/(?<nxtPfile>[^/]+?)(?:/)?$"
    },
    {
      "page": "/api/tasks/[id]/phases",
      "regex": "^/api/tasks/([^/]+?)/phases(?:/)?$",
      "routeKeys": {
        "nxtPid": "nxtPid"
      },
      "namedRegex": "^/api/tasks/(?<nxtPid>[^/]+?)/phases(?:/)?$"
    },
    {
      "page": "/api/tasks/[id]/phases/[phase]",
      "regex": "^/api/tasks/([^/]+?)/phases/([^/]+?)(?:/)?$",
      "routeKeys": {
        "nxtPid": "nxtPid",
        "nxtPphase": "nxtPphase"
      },
      "namedRegex": "^/api/tasks/(?<nxtPid>[^/]+?)/phases/(?<nxtPphase>[^/]+?)(?:/)?$"
    },
    {
      "page": "/api/tasks/[id]/sessions",
      "regex": "^/api/tasks/([^/]+?)/sessions(?:/)?$",
      "routeKeys": {
        "nxtPid": "nxtPid"
      },
      "namedRegex": "^/api/tasks/(?<nxtPid>[^/]+?)/sessions(?:/)?$"
    },
    {
      "page": "/api/tasks/[id]/sessions/[sessionId]",
      "regex": "^/api/tasks/([^/]+?)/sessions/([^/]+?)(?:/)?$",
      "routeKeys": {
        "nxtPid": "nxtPid",
        "nxtPsessionId": "nxtPsessionId"
      },
      "namedRegex": "^/api/tasks/(?<nxtPid>[^/]+?)/sessions/(?<nxtPsessionId>[^/]+?)(?:/)?$"
    },
    {
      "page": "/api/tasks/[id]/specification",
      "regex": "^/api/tasks/([^/]+?)/specification(?:/)?$",
      "routeKeys": {
        "nxtPid": "nxtPid"
      },
      "namedRegex": "^/api/tasks/(?<nxtPid>[^/]+?)/specification(?:/)?$"
    },
    {
      "page": "/api/templates/[name]",
      "regex": "^/api/templates/([^/]+?)(?:/)?$",
      "routeKeys": {
        "nxtPname": "nxtPname"
      },
      "namedRegex": "^/api/templates/(?<nxtPname>[^/]+?)(?:/)?$"
    },
    {
      "page": "/api/uploads/[...path]",
      "regex": "^/api/uploads/(.+?)(?:/)?$",
      "routeKeys": {
        "nxtPpath": "nxtPpath"
      },
      "namedRegex": "^/api/uploads/(?<nxtPpath>.+?)(?:/)?$"
    },
    {
      "page": "/containers/[name]",
      "regex": "^/containers/([^/]+?)(?:/)?$",
      "routeKeys": {
        "nxtPname": "nxtPname"
      },
      "namedRegex": "^/containers/(?<nxtPname>[^/]+?)(?:/)?$"
    },
    {
      "page": "/tasks/[id]",
      "regex": "^/tasks/([^/]+?)(?:/)?$",
      "routeKeys": {
        "nxtPid": "nxtPid"
      },
      "namedRegex": "^/tasks/(?<nxtPid>[^/]+?)(?:/)?$"
    }
  ],
  "staticRoutes": [
    {
      "page": "/",
      "regex": "^/(?:/)?$",
      "routeKeys": {},
      "namedRegex": "^/(?:/)?$"
    },
    {
      "page": "/_not-found",
      "regex": "^/_not\\-found(?:/)?$",
      "routeKeys": {},
      "namedRegex": "^/_not\\-found(?:/)?$"
    },
    {
      "page": "/containers",
      "regex": "^/containers(?:/)?$",
      "routeKeys": {},
      "namedRegex": "^/containers(?:/)?$"
    },
    {
      "page": "/plan",
      "regex": "^/plan(?:/)?$",
      "routeKeys": {},
      "namedRegex": "^/plan(?:/)?$"
    },
    {
      "page": "/plan/concepts",
      "regex": "^/plan/concepts(?:/)?$",
      "routeKeys": {},
      "namedRegex": "^/plan/concepts(?:/)?$"
    },
    {
      "page": "/plan/features",
      "regex": "^/plan/features(?:/)?$",
      "routeKeys": {},
      "namedRegex": "^/plan/features(?:/)?$"
    },
    {
      "page": "/preferences",
      "regex": "^/preferences(?:/)?$",
      "routeKeys": {},
      "namedRegex": "^/preferences(?:/)?$"
    },
    {
      "page": "/settings",
      "regex": "^/settings(?:/)?$",
      "routeKeys": {},
      "namedRegex": "^/settings(?:/)?$"
    },
    {
      "page": "/tasks",
      "regex": "^/tasks(?:/)?$",
      "routeKeys": {},
      "namedRegex": "^/tasks(?:/)?$"
    },
    {
      "page": "/tasks/list",
      "regex": "^/tasks/list(?:/)?$",
      "routeKeys": {},
      "namedRegex": "^/tasks/list(?:/)?$"
    }
  ],
  "dataRoutes": [],
  "rsc": {
    "header": "RSC",
    "varyHeader": "RSC, Next-Router-State-Tree, Next-Router-Prefetch, Next-Router-Segment-Prefetch",
    "prefetchHeader": "Next-Router-Prefetch",
    "didPostponeHeader": "x-nextjs-postponed",
    "contentTypeHeader": "text/x-component",
    "suffix": ".rsc",
    "prefetchSuffix": ".prefetch.rsc",
    "prefetchSegmentHeader": "Next-Router-Segment-Prefetch",
    "prefetchSegmentSuffix": ".segment.rsc",
    "prefetchSegmentDirSuffix": ".segments"
  },
  "rewriteHeaders": {
    "pathHeader": "x-nextjs-rewritten-path",
    "queryHeader": "x-nextjs-rewritten-query"
  }
}