@wp-typia/project-tools
v0.24.4
Published
Project orchestration and programmatic tooling for wp-typia
Maintainers
Readme
@wp-typia/project-tools
Programmatic project orchestration package for wp-typia.
Package roles:
wp-typiaowns the CLI, help, TUI, completions, skills, MCP, and bin entry.@wp-typia/project-toolsowns scaffold, add-block, migrate, template, doctor, and schema project helpers. It also owns the typed generator boundary viaBlockSpec,BlockGeneratorService, andinspectBlockGeneration(...), plus the emitter-owned built-in structural/code path where built-in templates no longer ship structural, TS/TSX, style, or block-localrender.phpMustache files.@wp-typia/block-runtime/*owns generated-project runtime helpers.
Supported public imports:
@wp-typia/project-tools@wp-typia/project-tools/schema-core@wp-typia/project-tools/ai-artifacts@wp-typia/project-tools/typia-llm
Implementation note:
@wp-typia/project-tools/schema-coreremains the preferred project-tooling import path.- The shared implementation now lives in
@wp-typia/block-runtime/schema-core. - Shared manifest/migration contract types now live in
@wp-typia/block-runtime/migration-types. - The public
doctorsurface still lives on@wp-typia/project-tools, while environment and workspace checks now sit behind focused helper modules. - These splits are maintainability refactors behind stable public facades. Keep
importing the documented
@wp-typia/project-toolsand@wp-typia/project-tools/schema-coresurfaces rather than the focused helper files directly.
Example:
import {
BlockGeneratorService,
getTemplateById,
parseMigrationArgs,
projectJsonSchemaDocument,
resolvePackageManagerId,
} from '@wp-typia/project-tools';import { normalizeEndpointAuthDefinition } from '@wp-typia/project-tools/schema-core';import {
syncWordPressAiArtifacts,
type AbilitySpecCatalog,
} from '@wp-typia/project-tools/ai-artifacts';import {
syncTypiaLlmAdapterModule,
projectTypiaLlmApplicationArtifact,
} from '@wp-typia/project-tools/typia-llm';BlockGeneratorService is the additive typed orchestration boundary for built-in
block scaffolds. Built-in templates no longer ship structural, TS/TSX, style,
or block-local render.php Mustache files for built-in types.ts,
block.json, generated scaffold bodies, or block-local non-TS assets; those
files and starter typia.manifest.json now come from the emitter path, while
project bootstrap/package-manager files, sync scripts, shared REST helpers, and
the remaining non-block assets still come from Mustache-backed template copy.
Generated projects now consume JSON artifacts through typed wrapper modules instead of local casts:
block-metadata.tsforblock.jsonmanifest-document.tsfor editor and migration consumers oftypia.manifest.jsonmanifest-defaults-document.tsfor validator/defaults consumers oftypia.manifest.json
The higher-level generator architecture record, including the current phase map
and the non-mutating plan -> validate -> render -> apply tool-facing usage
model, lives in
docs/block-generator-architecture.md.
The public non-mutating controller/tool contract now lives in
docs/block-generator-tool-contract.md.
Reusable external layer packages on top of the built-in shared scaffold model
are now available through the canonical built-in CLI flags
wp-typia create --external-layer-source ... [--external-layer-id ...],
wp-typia add block --external-layer-source ... [--external-layer-id ...],
and programmatically through scaffoldProject(...), BlockGeneratorService,
and inspectBlockGeneration(...). The layer contract record lives in
docs/external-template-layer-composition.md.
If you need metadata sync, editor helpers, validation helpers, or other generated-project runtime utilities, import them directly from @wp-typia/block-runtime/*.
@wp-typia/project-tools/typia-llm is an opt-in build-time adapter target for
downstream TypeScript-first tool/function consumers. It renders the generated
typia.llm TypeScript module from endpoint manifests and canonical contract
types, and exposes JSON-friendly projection helpers for compiled
typia.llm.application(...) and typia.llm.structuredOutput(...) results. It
does not add a generated-project runtime dependency on typia.llm.
