# Internal Component Overview ## Purpose This document inventories Promptkit's implemented components for contributors. The [architecture policy](../policy/architecture.md) owns durable boundary and dependency rules. See the [development guide](../development.md) for contributor workflow and validation. ## Implemented Components | Component | Implemented responsibility | References | | --- | --- | --- | | Root `promptkit` package | Establishes the public package boundary for the Go module. It does not yet provide migrated framework behavior or exported APIs. | [Package declaration](../../doc.go) | | `internal/domain` | Defines internal framework values for requests, artifacts, prompt definitions, profiles, execution targets, rendering, generation, and validation. | [Domain declarations](../../internal/domain/domain.go) | | `internal/defaults` | Defines application-neutral framework constants and constructs the default execution target. It contains no CLI, server, or inbound HTTP limits. | [Framework defaults](../../internal/defaults/defaults.go) | | `internal/filecatalog` | Provides deterministic YAML discovery and path helpers for operating-system filesystems and `fs.FS` sources. | [File catalog](../../internal/filecatalog/catalog.go) | These packages form the internal extraction foundation. Prompt and profile sources, rendering, artifact reading, validation, model clients, orchestration, and a usable public engine are not implemented in Promptkit yet. ## Maintenance Update this inventory as framework extraction introduces packages or changes component responsibilities. List only implemented components; proposed package boundaries belong in temporary planning documents until their implementation lands.