TenkaCloud Docs

Pack manifest reference Stable

The tenkacloud-pack.json manifest is the only entrypoint of a problem pack. The fields below are normative reference generated from the PackManifestSchema zod schema in @tenkacloud/problem-sdk. The schema is .strict(), so any unknown top-level field is rejected.

Fields

FieldTypePresenceConstraint
schemaVersion1 (literal)RequiredMust equal the current pack schema version (1).
idstringRequiredReverse-DNS style, lowercase, two or more dot-separated segments.
versionstringRequiredExact SemVer (major.minor.patch with optional pre-release / build).
corestringRequiredSemVer range the pack requires of the platform core.
titlestringRequiredNon-empty display title.
descriptionstringRequiredNon-empty pack description.
licensestringRequiredNon-empty license identifier.
problemsRootstringRequiredRelative path without '..' traversal; not an absolute root.
requiredRuntimesProviderEngine[]RequiredEach entry is { provider, engine }; provider ∈ { aws, gcp, azure, sakura }.
dependenciesDependency[]OptionalOptional. Each { id (reverse-DNS), range (SemVer range) }; ids must be unique.

The manifest is intentionally inert: v1 carries no author credentials, remote URLs, scripts, or executable hooks. See the security and provenance model.

Example

The example below is illustrative, not normative — the field rules above are the source of truth.

{
  "schemaVersion": 1,
  "id": "com.example.starter",
  "version": "1.0.0",
  "core": ">=1.0.0",
  "title": "Starter pack",
  "description": "A minimal validator-passing pack.",
  "license": "Apache-2.0",
  "problemsRoot": "problems",
  "requiredRuntimes": [{ "provider": "aws", "engine": "cloudformation" }]
}

Related: problem metadata reference and the CLI reference.