@jjdenhertog/ai-driven-development
Version:
AI-driven development workflow with learning capabilities for Claude
265 lines • 7.31 kB
JSON
{
"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"
}
}