{"record":{"id":"de4c5e6c87ea89f8","repo":"hasura/graphql-engine","slug":"starter-kit-is-not-available-for-framework-s","errorCode":null,"errorMessage":"starter kit is not available for framework %s","messagePattern":"starter kit is not available for framework (.+?)","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"cli/commands/actions_use_codegen.go","lineNumber":168,"sourceCode":"\n\t\tif newCodegenExecutionConfig.Framework == \"\" {\n\t\t\treturn errors.E(op, fmt.Errorf(\"framework %s is not found\", o.framework))\n\t\t}\n\t}\n\n\thasStarterKit := false\n\n\tfor _, f := range allFrameworks {\n\t\tif f.Name == newCodegenExecutionConfig.Framework && f.HasStarterKit {\n\t\t\thasStarterKit = true\n\t\t}\n\t}\n\n\t// if with-starter-kit flag is set and the same is not available for the framework, return error\n\tif o.withStarterKit && !hasStarterKit {\n\t\treturn errors.E(\n\t\t\top,\n\t\t\tfmt.Errorf(\n\t\t\t\t\"starter kit is not available for framework %s\",\n\t\t\t\tnewCodegenExecutionConfig.Framework,\n\t\t\t),\n\t\t)\n\t}\n\n\t// if with-starter-kit flag is not provided, give an option to clone a starterkit\n\tif !o.withStarterKit && hasStarterKit {\n\t\tshouldCloneStarterKit, err := util.GetYesNoPrompt(\n\t\t\t\"Do you also want to clone a starter kit for \" + newCodegenExecutionConfig.Framework + \"?\",\n\t\t)\n\t\tif err != nil {\n\t\t\treturn errors.E(op, fmt.Errorf(\"error in getting input from user: %w\", err))\n\t\t}\n\n\t\to.withStarterKit = shouldCloneStarterKit\n\t}\n","sourceCodeStart":150,"sourceCodeEnd":186,"githubUrl":"https://github.com/hasura/graphql-engine/blob/724551b9ae87845594ef0408cff0e50eb6c90dc5/cli/commands/actions_use_codegen.go#L150-L186","documentation":"Validation error: --with-starter-kit was passed to `hasura actions use-codegen`, but the selected framework's entry in the codegen-assets manifest has no starter kit available, so the command refuses to proceed.","triggerScenarios":"Choosing a framework whose manifest entry lacks a starter kit directory (hasStarterKit stayed false) while explicitly passing --with-starter-kit.","commonSituations":"Switching from a framework like nodejs-express (has starter kit) to one without, and keeping the --with-starter-kit flag in a script.","solutions":["Drop the --with-starter-kit flag for frameworks that don't offer one.","Pick a framework that ships a starter kit (visible from the prompt list which marks availability).","Scaffold the project manually if you need a specific framework plus boilerplate."],"exampleFix":"// before\nhasura actions use-codegen --framework <no-kit-framework> --with-starter-kit\n// after\nhasura actions use-codegen --framework <no-kit-framework>","handlingStrategy":"validation","validationCode":"# check starter kit availability in the clone before passing the flag\nfind ~/.hasura/codegen-assets -path '*<framework>/starter-kit' -type d | grep -q .","typeGuard":null,"tryCatchPattern":"Catch the message, drop --with-starter-kit or switch to a framework that ships a kit, then re-run.","preventionTips":["Only pass --with-starter-kit for frameworks known to have kits.","Keep flag sets per-framework in your automation."],"tags":["validation","starter-kit","hasura-cli","cli-flags"],"backgroundTag":"unsupported-option-combination","analyzedSha":"724551b9ae87845594ef0408cff0e50eb6c90dc5","analyzedAt":"2026-08-28T07:32:55.105Z","schemaVersion":2},"datasetVersion":"2026-08-28T11:17:15.048Z"}