{
	"//name": "Scoped under the kimchi-dev npm org (the GitHub org is getkimchi)",
	"name": "@kimchi-dev/kimchi-workflows",
	"//version": "Placeholder, never bumped: the git tag is the version, stamped in at publish time by release.yml",
	"version": "0.0.5",
	"description": "Define arbitrary workflows in TypeScript and run them inside the PI coding harness.",
	"keywords": [
		"pi-package",
		"pi",
		"workflow",
		"agent",
		"coding-agent"
	],
	"license": "Apache-2.0",
	"author": "CAST AI Group, Inc.",
	"repository": {
		"type": "git",
		"url": "git+https://github.com/getkimchi/kimchi-workflows.git"
	},
	"homepage": "https://github.com/getkimchi/kimchi-workflows#readme",
	"bugs": "https://github.com/getkimchi/kimchi-workflows/issues",
	"packageManager": "pnpm@10.33.0",
	"//kimchiWorkflows": "`pnpm pack` strips the standard packageManager field. Keep the project-workflow toolchain pin in package-owned metadata that survives publication.",
	"kimchiWorkflows": {
		"packageManager": "pnpm@10.33.0"
	},
	"type": "module",
	"engines": {
		"node": ">=24"
	},
	"bin": {
		"kimchi-workflows": "./bin/kimchi-workflows.mjs"
	},
	"//files": "Each shipped directory earns its place. `dist` is what consumers import; `src` is what PI loads from git installs and what source maps resolve against. `docs` and `examples` are the public, version-matched authoring guidance linked by /workflow create.",
	"files": [
		"bin",
		"dist",
		"src",
		"docs",
		"examples"
	],
	"publishConfig": {
		"access": "public"
	},
	"//exports": "The public surface, and the only names anything outside this repo may import. The package root IS the authoring API — that is what a workflow file imports; `./flow` names the same module for symmetry with the other layers. Directory paths (`./src/...`, `./dist/...`) are deliberately NOT exported: the layout is ours to change.",
	"exports": {
		".": {
			"types": "./dist/flow/index.d.ts",
			"default": "./dist/flow/index.js"
		},
		"./flow": {
			"types": "./dist/flow/index.d.ts",
			"default": "./dist/flow/index.js"
		},
		"./engine": {
			"types": "./dist/engine/index.d.ts",
			"default": "./dist/engine/index.js"
		},
		"./host": {
			"types": "./dist/host/index.d.ts",
			"default": "./dist/host/index.js"
		},
		"./testing": {
			"types": "./dist/testing/index.d.ts",
			"default": "./dist/testing/index.js"
		}
	},
	"//pi": "The PI package manifest (docs/packages.md), which is what makes `pi install <path|git:…>` load the /workflow command. Without it PI records the package in settings and loads NOTHING from it — a package.json with no `pi` key and no conventional `extensions/` directory contributes no resources. It points at TypeScript on purpose: PI loads extensions through jiti, and a git install never runs the publish build, so `src` is the only entry point guaranteed to exist.",
	"pi": {
		"extensions": [
			"./src/host/extension.ts"
		]
	},
	"//scripts": "`prepack` (not `prepare`) builds for the tarball: `prepare` would also wastefully build git installs, where PI loads the checked-in TypeScript source and omits the development-only typebox pin.",
	"scripts": {
		"build": "tsc -p tsconfig.build.json",
		"docs:authoring": "node scripts/generate-authoring-reference.mjs",
		"docs:check": "node scripts/generate-authoring-reference.mjs --check",
		"prepack": "pnpm run build",
		"test": "vitest run",
		"test:integration": "vitest run --config vitest.integration.config.ts",
		"typecheck": "tsc --noEmit",
		"lint": "biome check .",
		"lint:fix": "biome check --write .",
		"check": "pnpm run docs:check && pnpm run lint && pnpm run typecheck && pnpm run test"
	},
	"//dependencies": "PI does not provide jiti or the verification toolchain. jiti loads workflows and the physical package CLI; TypeScript and Vitest verify project workflow packages outside the compiled harness.",
	"dependencies": {
		"@types/node": "^26.2.0",
		"jiti": "^2.7.0",
		"typescript": "^7.0.2",
		"vitest": "4.1.10"
	},
	"//peerDependencies": "The packages PI bundles and hands to extensions itself (docs/packages.md: \"list them in peerDependencies with a \\\"*\\\" range and do not bundle them\"). PI's extension loader aliases these specifiers to its own copies and that alias WINS over the consuming project's node_modules — so a range narrower than `*` would describe a resolution we do not control.",
	"peerDependencies": {
		"@earendil-works/pi-coding-agent": "*",
		"@earendil-works/pi-tui": "*",
		"typebox": "*"
	},
	"//devDependencies": "The PI packages match Kimchi's pinned runtime in ../kimchi, and `typebox` is pinned EXACTLY to the version that runtime pins. Testing against newer copies can pass locally while the real harness lacks the same behavior.",
	"devDependencies": {
		"@biomejs/biome": "^2.5.6",
		"@earendil-works/pi-coding-agent": "0.84.1",
		"@earendil-works/pi-tui": "0.84.1",
		"typebox": "1.3.7"
	}
}
