hasura/graphql-engine · error

framework %s is not found

Error message

framework %s is not found

What it means

Validation error: `hasura actions use-codegen --framework X` was given a framework name that does not match any framework in the manifest fetched from the codegen-assets repo, so newCodegenExecutionConfig.Framework stayed empty and the command aborts.

Source

Thrown at cli/commands/actions_use_codegen.go:152

		sort.Strings(frameworkList)

		newCodegenExecutionConfig.Framework, err = util.GetSelectPrompt(
			"Choose a codegen framework to use",
			frameworkList,
		)
		if err != nil {
			return errors.E(op, fmt.Errorf("error in selecting framework: %w", err))
		}
	} else {
		for _, f := range allFrameworks {
			if o.framework == f.Name {
				newCodegenExecutionConfig.Framework = o.framework
			}
		}

		if newCodegenExecutionConfig.Framework == "" {
			return errors.E(op, fmt.Errorf("framework %s is not found", o.framework))
		}
	}

	hasStarterKit := false

	for _, f := range allFrameworks {
		if f.Name == newCodegenExecutionConfig.Framework && f.HasStarterKit {
			hasStarterKit = true
		}
	}

	// if with-starter-kit flag is set and the same is not available for the framework, return error
	if o.withStarterKit && !hasStarterKit {
		return errors.E(
			op,
			fmt.Errorf(
				"starter kit is not available for framework %s",
				newCodegenExecutionConfig.Framework,

View on GitHub (pinned to 724551b9ae)

Solutions

  1. Run without --framework to see the interactive list of valid names, or check the codegen-assets repo manifest.
  2. Correct the flag to the exact framework name (e.g. nodejs-express, typescript-express).
  3. Refresh the codegen-assets clone if you expect a framework that isn't listed.

Example fix

// before
hasura actions use-codegen --framework node-express
// after
hasura actions use-codegen --framework nodejs-express
Defensive patterns

Strategy: validation

Validate before calling

# list valid frameworks by running interactively once, then pin:
hasura actions use-codegen  # choose from prompt to learn exact names

Try / catch

Catch the 'framework %s is not found' message, print the valid list (from the clone's manifest), and re-run with a correct name.

Prevention

When it happens

Trigger: Passing a misspelled or nonexistent framework name, e.g. --framework node-express when the manifest lists nodejs-express; or a stale clone missing frameworks that newer versions advertise.

Common situations: Typos in CI scripts, copying framework names from outdated docs, or name changes between codegen-assets versions.

Related errors


AI-assisted analysis of hasura/graphql-engine@724551b9ae (2026-08-28). Data as JSON: /api/errors/9b8d32c866c0f4aa. Report an issue: GitHub.