@kindgi/cli 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (139) hide show
  1. package/README.md +63 -15
  2. package/dist/build/bundle.d.ts +5 -2
  3. package/dist/build/bundle.d.ts.map +1 -1
  4. package/dist/build/bundle.js +8 -4
  5. package/dist/build/bundle.js.map +1 -1
  6. package/dist/build/containerfile.d.ts.map +1 -1
  7. package/dist/build/containerfile.js +1 -0
  8. package/dist/build/containerfile.js.map +1 -1
  9. package/dist/build/defaults.d.ts.map +1 -1
  10. package/dist/build/defaults.js +14 -3
  11. package/dist/build/defaults.js.map +1 -1
  12. package/dist/build/host-install.d.ts +52 -0
  13. package/dist/build/host-install.d.ts.map +1 -1
  14. package/dist/build/host-install.js +68 -0
  15. package/dist/build/host-install.js.map +1 -1
  16. package/dist/commands/auth.d.ts +22 -0
  17. package/dist/commands/auth.d.ts.map +1 -1
  18. package/dist/commands/auth.js +197 -2
  19. package/dist/commands/auth.js.map +1 -1
  20. package/dist/commands/build.d.ts +7 -0
  21. package/dist/commands/build.d.ts.map +1 -1
  22. package/dist/commands/build.js +31 -1
  23. package/dist/commands/build.js.map +1 -1
  24. package/dist/commands/dev.d.ts +1 -2
  25. package/dist/commands/dev.d.ts.map +1 -1
  26. package/dist/commands/dev.js +136 -58
  27. package/dist/commands/dev.js.map +1 -1
  28. package/dist/commands/helpers.d.ts +14 -3
  29. package/dist/commands/helpers.d.ts.map +1 -1
  30. package/dist/commands/helpers.js +20 -3
  31. package/dist/commands/helpers.js.map +1 -1
  32. package/dist/commands/init.d.ts.map +1 -1
  33. package/dist/commands/init.js +2 -3
  34. package/dist/commands/init.js.map +1 -1
  35. package/dist/commands/providers.d.ts.map +1 -1
  36. package/dist/commands/providers.js +11 -1
  37. package/dist/commands/providers.js.map +1 -1
  38. package/dist/commands/runs.d.ts.map +1 -1
  39. package/dist/commands/runs.js +17 -15
  40. package/dist/commands/runs.js.map +1 -1
  41. package/dist/commands/secrets.d.ts +1 -4
  42. package/dist/commands/secrets.d.ts.map +1 -1
  43. package/dist/commands/secrets.js +7 -55
  44. package/dist/commands/secrets.js.map +1 -1
  45. package/dist/commands/test.js +1 -1
  46. package/dist/commands/test.js.map +1 -1
  47. package/dist/commands/tools.d.ts.map +1 -1
  48. package/dist/commands/tools.js +11 -2
  49. package/dist/commands/tools.js.map +1 -1
  50. package/dist/commands/unwired.d.ts +5 -0
  51. package/dist/commands/unwired.d.ts.map +1 -1
  52. package/dist/commands/unwired.js +11 -0
  53. package/dist/commands/unwired.js.map +1 -1
  54. package/dist/context.d.ts +9 -0
  55. package/dist/context.d.ts.map +1 -1
  56. package/dist/context.js +1 -0
  57. package/dist/context.js.map +1 -1
  58. package/dist/dev/bundler.d.ts +2 -0
  59. package/dist/dev/bundler.d.ts.map +1 -1
  60. package/dist/dev/bundler.js +91 -10
  61. package/dist/dev/bundler.js.map +1 -1
  62. package/dist/dev/defaults.d.ts +8 -6
  63. package/dist/dev/defaults.d.ts.map +1 -1
  64. package/dist/dev/defaults.js +78 -60
  65. package/dist/dev/defaults.js.map +1 -1
  66. package/dist/dev/dev-only-imports.d.ts +15 -0
  67. package/dist/dev/dev-only-imports.d.ts.map +1 -0
  68. package/dist/dev/dev-only-imports.js +57 -0
  69. package/dist/dev/dev-only-imports.js.map +1 -0
  70. package/dist/dev/docker-compose.dev.yml +19 -7
  71. package/dist/dev/pack-service.d.ts +8 -0
  72. package/dist/dev/pack-service.d.ts.map +1 -1
  73. package/dist/dev/pack-service.js +1 -0
  74. package/dist/dev/pack-service.js.map +1 -1
  75. package/dist/dev/postgres-container.d.ts +77 -0
  76. package/dist/dev/postgres-container.d.ts.map +1 -0
  77. package/dist/dev/postgres-container.js +346 -0
  78. package/dist/dev/postgres-container.js.map +1 -0
  79. package/dist/dev/runners.d.ts +36 -11
  80. package/dist/dev/runners.d.ts.map +1 -1
  81. package/dist/dev/runtime-container.d.ts +11 -2
  82. package/dist/dev/runtime-container.d.ts.map +1 -1
  83. package/dist/dev/runtime-container.js +16 -7
  84. package/dist/dev/runtime-container.js.map +1 -1
  85. package/dist/dev/runtime-image.d.ts +15 -2
  86. package/dist/dev/runtime-image.d.ts.map +1 -1
  87. package/dist/dev/runtime-image.js +31 -2
  88. package/dist/dev/runtime-image.js.map +1 -1
  89. package/dist/dev/runtime-registry.d.ts +73 -0
  90. package/dist/dev/runtime-registry.d.ts.map +1 -0
  91. package/dist/dev/runtime-registry.js +111 -0
  92. package/dist/dev/runtime-registry.js.map +1 -0
  93. package/dist/errors.d.ts.map +1 -1
  94. package/dist/errors.js +5 -1
  95. package/dist/errors.js.map +1 -1
  96. package/dist/init/augment-scaffolder.d.ts +12 -0
  97. package/dist/init/augment-scaffolder.d.ts.map +1 -1
  98. package/dist/init/augment-scaffolder.js +93 -14
  99. package/dist/init/augment-scaffolder.js.map +1 -1
  100. package/dist/init/pnpm-workspace-patcher.d.ts +55 -0
  101. package/dist/init/pnpm-workspace-patcher.d.ts.map +1 -0
  102. package/dist/init/pnpm-workspace-patcher.js +248 -0
  103. package/dist/init/pnpm-workspace-patcher.js.map +1 -0
  104. package/dist/init/template-files.d.ts +2 -0
  105. package/dist/init/template-files.d.ts.map +1 -1
  106. package/dist/init/template-files.js +16 -1
  107. package/dist/init/template-files.js.map +1 -1
  108. package/dist/main.d.ts +7 -0
  109. package/dist/main.d.ts.map +1 -1
  110. package/dist/main.js +1 -0
  111. package/dist/main.js.map +1 -1
  112. package/dist/parse.d.ts +6 -0
  113. package/dist/parse.d.ts.map +1 -1
  114. package/dist/parse.js +1 -0
  115. package/dist/parse.js.map +1 -1
  116. package/dist/sdk-skills/kindgi-authoring-agents/SKILL.md +3 -4
  117. package/dist/sdk-skills/kindgi-authoring-flows/SKILL.md +12 -9
  118. package/dist/sdk-skills/kindgi-authoring-guardrails/SKILL.md +13 -7
  119. package/dist/sdk-skills/kindgi-authoring-mcp-servers/SKILL.md +1 -1
  120. package/dist/sdk-skills/kindgi-authoring-providers/SKILL.md +10 -9
  121. package/dist/sdk-skills/kindgi-authoring-tools/SKILL.md +15 -5
  122. package/dist/sdk-skills/kindgi-framework-feedback/SKILL.md +1 -1
  123. package/dist/sdk-skills/kindgi-getting-started/SKILL.md +16 -8
  124. package/dist/sdk-skills/kindgi-python-authoring-agents/SKILL.md +1 -1
  125. package/dist/sdk-skills/kindgi-python-authoring-flows/SKILL.md +12 -9
  126. package/dist/sdk-skills/kindgi-python-authoring-guardrails/SKILL.md +10 -7
  127. package/dist/sdk-skills/kindgi-python-authoring-tools/SKILL.md +8 -2
  128. package/dist/sdk-skills/kindgi-python-getting-started/SKILL.md +5 -3
  129. package/dist/templates/minimal/pnpm-workspace.yaml +6 -4
  130. package/dist/templates/sample/guardrails/response-not-empty/index.ts.tmpl +14 -6
  131. package/dist/templates/sample/pnpm-workspace.yaml +6 -4
  132. package/dist/terminal-input.d.ts +17 -0
  133. package/dist/terminal-input.d.ts.map +1 -0
  134. package/dist/terminal-input.js +88 -0
  135. package/dist/terminal-input.js.map +1 -0
  136. package/package.json +10 -10
  137. /package/dist/templates/minimal/{.gitignore → gitignore} +0 -0
  138. /package/dist/templates/python/{.gitignore → gitignore} +0 -0
  139. /package/dist/templates/sample/{.gitignore → gitignore} +0 -0
@@ -7,7 +7,20 @@
7
7
  * a tag would leave anyone with an older pull on an older runtime.
8
8
  *
9
9
  * The image is in private preview on Quay (pull credentials on request at
10
- * contact@kindgi.com, then `docker login quay.io`).
10
+ * contact@kindgi.com, then `kindgi auth registry --username <name>`).
11
11
  */
12
- export declare const DEFAULT_RUNTIME_IMAGE = "quay.io/kindgi/runtime:0.1.0@sha256:91cb164f17c0754d56d6f09783dad00748eff3e9906bdd3f49f45747cf49c5b2";
12
+ export declare const DEFAULT_RUNTIME_IMAGE = "quay.io/kindgi/runtime:0.1.1@sha256:eaa3a981f88f37efa3a33955d24c40df31474997e0318b006e983f411fdd8654";
13
+ /**
14
+ * The registry an image reference is pulled from, read the way Docker
15
+ * reads it: the first path component when it names a host (it has a `.`
16
+ * or a `:`, or is `localhost`), otherwise Docker Hub.
17
+ */
18
+ export declare function registryOf(image: string): string;
19
+ /** The registry `DEFAULT_RUNTIME_IMAGE` is pulled from: `kindgi auth registry` logs in to it. */
20
+ export declare const RUNTIME_IMAGE_REGISTRY: string;
21
+ /**
22
+ * The same image on another registry: its repository path, tag and digest
23
+ * under `registry`, the way a mirror carries it.
24
+ */
25
+ export declare function imageOnRegistry(image: string, registry: string): string;
13
26
  //# sourceMappingURL=runtime-image.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-image.d.ts","sourceRoot":"","sources":["../../src/dev/runtime-image.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;GAUG;AACH,eAAO,MAAM,qBAAqB,yGACsE,CAAC"}
1
+ {"version":3,"file":"runtime-image.d.ts","sourceRoot":"","sources":["../../src/dev/runtime-image.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;GAUG;AACH,eAAO,MAAM,qBAAqB,yGACsE,CAAC;AAKzG;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAKhD;AAED,iGAAiG;AACjG,eAAO,MAAM,sBAAsB,QAAoC,CAAC;AAExE;;;GAGG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAOvE"}
@@ -9,7 +9,36 @@
9
9
  * a tag would leave anyone with an older pull on an older runtime.
10
10
  *
11
11
  * The image is in private preview on Quay (pull credentials on request at
12
- * contact@kindgi.com, then `docker login quay.io`).
12
+ * contact@kindgi.com, then `kindgi auth registry --username <name>`).
13
13
  */
14
- export const DEFAULT_RUNTIME_IMAGE = 'quay.io/kindgi/runtime:0.1.0@sha256:91cb164f17c0754d56d6f09783dad00748eff3e9906bdd3f49f45747cf49c5b2';
14
+ export const DEFAULT_RUNTIME_IMAGE = 'quay.io/kindgi/runtime:0.1.1@sha256:eaa3a981f88f37efa3a33955d24c40df31474997e0318b006e983f411fdd8654';
15
+ /** Docker Hub, the registry of a reference that names none (`busybox`, `library/busybox`). */
16
+ const DOCKER_HUB = 'docker.io';
17
+ /**
18
+ * The registry an image reference is pulled from, read the way Docker
19
+ * reads it: the first path component when it names a host (it has a `.`
20
+ * or a `:`, or is `localhost`), otherwise Docker Hub.
21
+ */
22
+ export function registryOf(image) {
23
+ const slash = image.indexOf('/');
24
+ if (slash === -1)
25
+ return DOCKER_HUB;
26
+ const first = image.slice(0, slash);
27
+ return first.includes('.') || first.includes(':') || first === 'localhost' ? first : DOCKER_HUB;
28
+ }
29
+ /** The registry `DEFAULT_RUNTIME_IMAGE` is pulled from: `kindgi auth registry` logs in to it. */
30
+ export const RUNTIME_IMAGE_REGISTRY = registryOf(DEFAULT_RUNTIME_IMAGE);
31
+ /**
32
+ * The same image on another registry: its repository path, tag and digest
33
+ * under `registry`, the way a mirror carries it.
34
+ */
35
+ export function imageOnRegistry(image, registry) {
36
+ const own = registryOf(image);
37
+ if (own === registry)
38
+ return image;
39
+ const named = image.startsWith(`${own}/`);
40
+ const path = named ? image.slice(own.length + 1) : image;
41
+ // Docker Hub's official images live under `library/`.
42
+ return `${registry}/${!named && !path.includes('/') ? `library/${path}` : path}`;
43
+ }
15
44
  //# sourceMappingURL=runtime-image.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-image.js","sourceRoot":"","sources":["../../src/dev/runtime-image.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,iCAAiC;AAEjC;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAChC,sGAAsG,CAAC"}
1
+ {"version":3,"file":"runtime-image.js","sourceRoot":"","sources":["../../src/dev/runtime-image.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,iCAAiC;AAEjC;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAChC,sGAAsG,CAAC;AAEzG,8FAA8F;AAC9F,MAAM,UAAU,GAAG,WAAW,CAAC;AAE/B;;;;GAIG;AACH,MAAM,UAAU,UAAU,CAAC,KAAa;IACtC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACjC,IAAI,KAAK,KAAK,CAAC,CAAC;QAAE,OAAO,UAAU,CAAC;IACpC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IACpC,OAAO,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,KAAK,KAAK,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC;AAClG,CAAC;AAED,iGAAiG;AACjG,MAAM,CAAC,MAAM,sBAAsB,GAAG,UAAU,CAAC,qBAAqB,CAAC,CAAC;AAExE;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,KAAa,EAAE,QAAgB;IAC7D,MAAM,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;IAC9B,IAAI,GAAG,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACnC,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;IAC1C,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IACzD,sDAAsD;IACtD,OAAO,GAAG,QAAQ,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AACnF,CAAC"}
@@ -0,0 +1,73 @@
1
+ /**
2
+ * Docker's access to the registry the Kindgi runtime image comes from, for
3
+ * `kindgi auth registry`: `docker login` (the credential goes to Docker's
4
+ * own credential store; Kindgi keeps no copy), then a check that the
5
+ * pinned image can be pulled.
6
+ *
7
+ * Every step runs `docker` through the runner `kindgi dev` uses
8
+ * (`runtime-container.ts`), handed in, so tests pass a fake.
9
+ */
10
+ import type { DockerRunner } from './runtime-container.js';
11
+ /** Whether `docker` output says the registry refused the credentials (or their absence). */
12
+ export declare function isRegistryAuthFailure(output: string): boolean;
13
+ /** The command that logs Docker in to `image`'s registry, as a message shows it. */
14
+ export declare function registryLoginCommand(image: string): string;
15
+ export type DockerCheck = {
16
+ readonly kind: 'ok';
17
+ } | {
18
+ readonly kind: 'error';
19
+ readonly message: string;
20
+ };
21
+ /** Docker is installed and its engine answers: the login and the pull both need it. */
22
+ export declare function checkDocker(run: DockerRunner): Promise<DockerCheck>;
23
+ export type RegistryLogin = {
24
+ readonly kind: 'ok';
25
+ /** What `docker login` warned about (an unencrypted credential store), line by line. */
26
+ readonly notes: readonly string[];
27
+ } | {
28
+ readonly kind: 'error';
29
+ readonly message: string;
30
+ };
31
+ /**
32
+ * `docker login <registry> --username <username> --password-stdin`, with
33
+ * the token written to its stdin: never in its arguments, its
34
+ * environment, or a message.
35
+ */
36
+ export declare function dockerLogin(run: DockerRunner, registry: string, username: string, token: string): Promise<RegistryLogin>;
37
+ /** How the check reached the registry: buildx, or the fallback when buildx isn't installed. */
38
+ export type AccessMethod = 'docker buildx imagetools inspect' | 'docker manifest inspect';
39
+ export type ImageAccess = {
40
+ readonly kind: 'ok';
41
+ readonly method: AccessMethod;
42
+ }
43
+ /** The registry refused: no credentials, or credentials without access. */
44
+ | {
45
+ readonly kind: 'no-access';
46
+ readonly detail: string;
47
+ readonly method: AccessMethod;
48
+ }
49
+ /** The image isn't there, or the registry can't be reached. */
50
+ | {
51
+ readonly kind: 'not-found';
52
+ readonly detail: string;
53
+ readonly method: AccessMethod;
54
+ }
55
+ /** Neither `docker buildx` nor `docker manifest` is available. */
56
+ | {
57
+ readonly kind: 'no-tool';
58
+ readonly detail: string;
59
+ };
60
+ /**
61
+ * Whether Docker's credentials on this machine can pull `image`, without
62
+ * pulling it: `docker buildx imagetools inspect` fetches the manifest by
63
+ * its digest, as `docker pull` does.
64
+ *
65
+ * Without buildx (a bare Linux engine often lacks it), `docker manifest
66
+ * inspect` on the digest-only reference instead. Never on the full
67
+ * `name:tag@digest`: it resolves that by its tag, so a moved tag fails it
68
+ * while the pinned digest still pulls.
69
+ */
70
+ export declare function checkImageAccess(run: DockerRunner, image: string): Promise<ImageAccess>;
71
+ /** `repo:tag@sha256:…` → `repo@sha256:…`; a reference without a digest is unchanged. */
72
+ export declare function digestOnly(image: string): string;
73
+ //# sourceMappingURL=runtime-registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime-registry.d.ts","sourceRoot":"","sources":["../../src/dev/runtime-registry.ts"],"names":[],"mappings":"AAGA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAiB,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAO1E,4FAA4F;AAC5F,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAE7D;AAED,oFAAoF;AACpF,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAI1D;AAWD,MAAM,MAAM,WAAW,GACnB;IAAE,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAA;CAAE,GACvB;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAEzD,uFAAuF;AACvF,wBAAsB,WAAW,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAezE;AAED,MAAM,MAAM,aAAa,GACrB;IACE,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IACpB,wFAAwF;IACxF,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;CACnC,GACD;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAEzD;;;;GAIG;AACH,wBAAsB,WAAW,CAC/B,GAAG,EAAE,YAAY,EACjB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,aAAa,CAAC,CAexB;AAED,+FAA+F;AAC/F,MAAM,MAAM,YAAY,GAAG,kCAAkC,GAAG,yBAAyB,CAAC;AAE1F,MAAM,MAAM,WAAW,GACnB;IAAE,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAA;CAAE;AACxD,2EAA2E;GACzE;IAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAA;CAAE;AACxF,+DAA+D;GAC7D;IAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAA;CAAE;AACxF,kEAAkE;GAChE;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAK1D;;;;;;;;;GASG;AACH,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAa7F;AASD,wFAAwF;AACxF,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAOhD"}
@@ -0,0 +1,111 @@
1
+ // SPDX-License-Identifier: Apache-2.0
2
+ // Copyright (C) 2026 Kindgi Inc.
3
+ import { RUNTIME_IMAGE_REGISTRY, registryOf } from './runtime-image.js';
4
+ /** How a registry, or Docker relaying it, refuses credentials or access. */
5
+ const AUTH_FAILURE = /unauthorized|denied|forbidden|authentication required|insufficient_scope|no basic auth credentials/i;
6
+ /** Whether `docker` output says the registry refused the credentials (or their absence). */
7
+ export function isRegistryAuthFailure(output) {
8
+ return AUTH_FAILURE.test(output);
9
+ }
10
+ /** The command that logs Docker in to `image`'s registry, as a message shows it. */
11
+ export function registryLoginCommand(image) {
12
+ const registry = registryOf(image);
13
+ const other = registry === RUNTIME_IMAGE_REGISTRY ? '' : ` --registry ${registry}`;
14
+ return `kindgi auth registry --username <the robot name you were given>${other}`;
15
+ }
16
+ /** The end of what `docker` wrote to stderr, with `secret` (the token) blanked out. */
17
+ function detail(outcome, secret) {
18
+ const text = secret === undefined || secret === ''
19
+ ? outcome.stderr
20
+ : outcome.stderr.split(secret).join('***');
21
+ return text.trim().split('\n').slice(-5).join('\n');
22
+ }
23
+ /** Docker is installed and its engine answers: the login and the pull both need it. */
24
+ export async function checkDocker(run) {
25
+ const version = await run(['version', '--format', '{{.Server.Version}}']);
26
+ if (version.code === null) {
27
+ return {
28
+ kind: 'error',
29
+ message: `Docker isn't installed, or \`docker\` isn't on your PATH (${detail(version)}).\n kindgi dev runs the Kindgi runtime in Docker: install Docker Desktop (or a Docker engine on Linux), then run this again.`,
30
+ };
31
+ }
32
+ if (version.code !== 0) {
33
+ return {
34
+ kind: 'error',
35
+ message: `Docker isn't running: ${detail(version)}\n Start Docker Desktop (or the Docker engine), then run this again.`,
36
+ };
37
+ }
38
+ return { kind: 'ok' };
39
+ }
40
+ /**
41
+ * `docker login <registry> --username <username> --password-stdin`, with
42
+ * the token written to its stdin: never in its arguments, its
43
+ * environment, or a message.
44
+ */
45
+ export async function dockerLogin(run, registry, username, token) {
46
+ const login = await run(['login', registry, '--username', username, '--password-stdin'], {
47
+ stdin: token,
48
+ });
49
+ if (login.code === 0) {
50
+ const notes = detail(login, token);
51
+ return { kind: 'ok', notes: notes === '' ? [] : notes.split('\n') };
52
+ }
53
+ const refused = isRegistryAuthFailure(login.stderr)
54
+ ? `\n Check the username and the token.${registry === RUNTIME_IMAGE_REGISTRY ? ' For new pull credentials, write to contact@kindgi.com.' : ''}`
55
+ : '';
56
+ return {
57
+ kind: 'error',
58
+ message: `docker login ${registry} failed: ${detail(login, token)}${refused}`,
59
+ };
60
+ }
61
+ /** `docker` saying a command (a plugin such as buildx) isn't installed. */
62
+ const UNKNOWN_COMMAND = /is not a docker command|unknown command/i;
63
+ /**
64
+ * Whether Docker's credentials on this machine can pull `image`, without
65
+ * pulling it: `docker buildx imagetools inspect` fetches the manifest by
66
+ * its digest, as `docker pull` does.
67
+ *
68
+ * Without buildx (a bare Linux engine often lacks it), `docker manifest
69
+ * inspect` on the digest-only reference instead. Never on the full
70
+ * `name:tag@digest`: it resolves that by its tag, so a moved tag fails it
71
+ * while the pinned digest still pulls.
72
+ */
73
+ export async function checkImageAccess(run, image) {
74
+ const inspected = await run(['buildx', 'imagetools', 'inspect', image]);
75
+ if (!UNKNOWN_COMMAND.test(inspected.stderr) || inspected.code === 0) {
76
+ return accessFrom(inspected, 'docker buildx imagetools inspect');
77
+ }
78
+ // `--insecure` only where Docker itself allows plain HTTP by default
79
+ // (loopback): `docker manifest` doesn't follow the engine's settings.
80
+ const insecure = isLoopbackRegistry(registryOf(image)) ? ['--insecure'] : [];
81
+ const manifest = await run(['manifest', 'inspect', ...insecure, digestOnly(image)]);
82
+ if (manifest.code !== 0 && UNKNOWN_COMMAND.test(manifest.stderr)) {
83
+ return { kind: 'no-tool', detail: `${detail(inspected)}\n${detail(manifest)}` };
84
+ }
85
+ return accessFrom(manifest, 'docker manifest inspect');
86
+ }
87
+ function accessFrom(outcome, method) {
88
+ if (outcome.code === 0)
89
+ return { kind: 'ok', method };
90
+ const shown = detail(outcome);
91
+ if (isRegistryAuthFailure(outcome.stderr))
92
+ return { kind: 'no-access', detail: shown, method };
93
+ return { kind: 'not-found', detail: shown, method };
94
+ }
95
+ /** `repo:tag@sha256:…` → `repo@sha256:…`; a reference without a digest is unchanged. */
96
+ export function digestOnly(image) {
97
+ const at = image.indexOf('@');
98
+ if (at === -1)
99
+ return image;
100
+ const name = image.slice(0, at);
101
+ const colon = name.lastIndexOf(':');
102
+ const repo = colon > name.lastIndexOf('/') ? name.slice(0, colon) : name;
103
+ return `${repo}${image.slice(at)}`;
104
+ }
105
+ function isLoopbackRegistry(registry) {
106
+ const host = registry.startsWith('[')
107
+ ? registry.slice(0, registry.indexOf(']') + 1)
108
+ : registry.split(':')[0];
109
+ return host === 'localhost' || host === '[::1]' || /^127\./.test(host ?? '');
110
+ }
111
+ //# sourceMappingURL=runtime-registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime-registry.js","sourceRoot":"","sources":["../../src/dev/runtime-registry.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAGA,OAAO,EAAkB,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAElE;;;;GAIG;AACH,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,SAAI,GAAG,QAAQ,CAEhE;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAC1B,MAAM,EAAE,OAAO,EACf,OAAO,EAAE;IAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;CAAE,GACrE,QAAQ,CA2BV;AAqDD;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,OAAO,GAAG,WAAW,GAAG,IAAI,CAatE"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAGA,OAAO,EAAkB,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAIlE;;;;GAIG;AACH,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,SAAI,GAAG,QAAQ,CAEhE;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAC1B,MAAM,EAAE,OAAO,EACf,OAAO,EAAE;IAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;CAAE,GACrE,QAAQ,CA8BV;AAqDD;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,OAAO,GAAG,WAAW,GAAG,IAAI,CAatE"}
package/dist/errors.js CHANGED
@@ -1,6 +1,7 @@
1
1
  // SPDX-License-Identifier: Apache-2.0
2
2
  // Copyright (C) 2026 Kindgi Inc.
3
3
  import { KindgiApiError } from '@kindgi/client';
4
+ import { UNWIRED_REASONS } from './commands/unwired.js';
4
5
  export function cliError(message, exitCode = 1) {
5
6
  return { kind: 'error', exitCode, stderr: `${message}\n` };
6
7
  }
@@ -17,7 +18,10 @@ export function formatThrown(thrown, options) {
17
18
  const label = options.commandLabel.startsWith('kindgi ')
18
19
  ? options.commandLabel
19
20
  : `kindgi ${options.commandLabel}`;
20
- return cliError(`Command '${label}' is not yet wired — SDK method '${wire.method}' is not available in this preview release.`, 2);
21
+ const reason = UNWIRED_REASONS.get(label.slice('kindgi '.length));
22
+ return cliError(reason !== undefined
23
+ ? `Command '${label}' is not available: ${reason}`
24
+ : `Command '${label}' is not yet wired — SDK method '${wire.method}' is not available in this preview release.`, 2);
21
25
  }
22
26
  // Validation failures (AJV rejects on tool input, schema-validation-failed
23
27
  // on body input) are useless without the `issues` array — the whole
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
@@ -71,4 +71,16 @@ export declare function runInitAugment(inputs: RunInitAugmentInputs): Promise<Co
71
71
  * `kindgi`. With the sample's `packId`, how to try its agent too.
72
72
  */
73
73
  export declare function augmentNextSteps(pm: PackageManager, samplePackId?: string): readonly string[];
74
+ /** Zod, at the fresh templates' range (their `package.json.tmpl`). */
75
+ export declare const ZOD_DEPENDENCY: {
76
+ readonly name: "zod";
77
+ readonly spec: "^4.0.0";
78
+ readonly section: "dependencies";
79
+ };
80
+ /**
81
+ * The app's own Zod is kept; one whose range excludes zod 4 is reported,
82
+ * since Kindgi's schemas, examples and skills are zod 4. A spec that isn't
83
+ * a semver range (`catalog:`, `workspace:*`, a tag) is taken on trust.
84
+ */
85
+ export declare function zodWarnings(pkg: Readonly<Record<string, unknown>>): readonly string[];
74
86
  //# sourceMappingURL=augment-scaffolder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"augment-scaffolder.d.ts","sourceRoot":"","sources":["../../src/init/augment-scaffolder.ts"],"names":[],"mappings":"AA4CA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,EACL,KAAK,cAAc,EAIpB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,KAAK,qBAAqB,EAAgC,MAAM,uBAAuB,CAAC;AAUjG,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B;;;;;OAKG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,iGAAiG;IACjG,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC;;;;;OAKG;IACH,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,6FAA6F;IAC7F,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC;IACzC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,kBAAkB;IAClB,QAAQ,CAAC,WAAW,CAAC,EAAE,kBAAkB,CAAC;IAC1C,QAAQ,CAAC,cAAc,CAAC,EAAE,cAAc,CAAC;IACzC,QAAQ,CAAC,eAAe,CAAC,EAAE,qBAAqB,CAAC;CAClD;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACtD,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACvE,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACzD,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CAAC;CACjE;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAC1B,IAAI,EAAE,MAAM,GAEV;IAAE,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAC5C;IAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAkBrD;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE;IAC1C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B,GAAG,MAAM,CA6BT;AAuCD,wBAAsB,cAAc,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,aAAa,CAAC,CAmHzF;AAwCD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,cAAc,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAmB7F"}
1
+ {"version":3,"file":"augment-scaffolder.d.ts","sourceRoot":"","sources":["../../src/init/augment-scaffolder.ts"],"names":[],"mappings":"AAkDA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,EACL,KAAK,cAAc,EAIpB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,KAAK,qBAAqB,EAAgC,MAAM,uBAAuB,CAAC;AAqBjG,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B;;;;;OAKG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,iGAAiG;IACjG,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC;;;;;OAKG;IACH,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,6FAA6F;IAC7F,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC;IACzC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,kBAAkB;IAClB,QAAQ,CAAC,WAAW,CAAC,EAAE,kBAAkB,CAAC;IAC1C,QAAQ,CAAC,cAAc,CAAC,EAAE,cAAc,CAAC;IACzC,QAAQ,CAAC,eAAe,CAAC,EAAE,qBAAqB,CAAC;CAClD;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACtD,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACvE,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACzD,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CAAC;CACjE;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAC1B,IAAI,EAAE,MAAM,GAEV;IAAE,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAC5C;IAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAkBrD;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE;IAC1C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B,GAAG,MAAM,CA6BT;AAyCD,wBAAsB,cAAc,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,aAAa,CAAC,CAuHzF;AAwCD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,cAAc,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAmB7F;AAKD,sEAAsE;AACtE,eAAO,MAAM,cAAc;;;;CAAoE,CAAC;AAShG;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,SAAS,MAAM,EAAE,CAcrF"}
@@ -20,15 +20,20 @@
20
20
  * customizations survive
21
21
  * - `package.json`: `@kindgi/sdk` (dependency) + `@kindgi/cli`
22
22
  * (devDependency), specs from `resolveKindgiDependencySpecs` — the
23
- * project runs its own pinned `kindgi`
23
+ * project runs its own pinned `kindgi` — and `zod` (dependency, the
24
+ * fresh templates' range), which every primitive's schemas use. An
25
+ * app's own `zod` is kept; one before zod 4 is reported.
24
26
  * - `.gitignore`: Kindgi's local-state patterns
27
+ * - in a pnpm app, `pnpm-workspace.yaml` (the workspace root's, or a new
28
+ * one): a decision for esbuild's install script, `allowBuilds.esbuild:
29
+ * false` (esbuild works without it), without which pnpm 11+ refuses to
30
+ * install `@kindgi/cli` (`pnpm-workspace-patcher.ts`)
25
31
  *
26
32
  * What augment mode does NOT write:
27
33
  * - env files — `kindgi dev` reads the project's own `.env` /
28
34
  * `.env.local`; nothing needs creating
29
- * - `pnpm-workspace.yaml`, `tsconfig.json`, `vitest.config.ts`,
30
- * `.nvmrc`, `AGENTS.md`, `README.md` — the surrounding repo owns
31
- * these; we don't touch them
35
+ * - `tsconfig.json`, `vitest.config.ts`, `.nvmrc`, `AGENTS.md`,
36
+ * `README.md` — the surrounding repo owns these; we don't touch them
32
37
  *
33
38
  * @related packages/cli/src/init/mode-detect.ts (the branch)
34
39
  * @related packages/cli/src/commands/init.ts (the caller)
@@ -36,6 +41,7 @@
36
41
  import { mkdir, readFile, stat, writeFile } from 'node:fs/promises';
37
42
  import { dirname, join } from 'node:path';
38
43
  import { KINDGI_CONFIG_FILENAMES } from '@kindgi/handler-runtime';
44
+ import semver from 'semver';
39
45
  import { PACK_ID_REGEX } from '../commands/init.js';
40
46
  import { syncSkills } from '../commands/skills.js';
41
47
  import { renderJson } from '../output.js';
@@ -43,7 +49,8 @@ import { binDisplay, detectPackageManager, installCommand, } from '../package-ma
43
49
  import { resolveKindgiDependencySpecs } from './dependency-specs.js';
44
50
  import { patchGitignore, patchPrettierignore } from './gitignore-patcher.js';
45
51
  import { patchPackageJson } from './package-json-patcher.js';
46
- import { collectTemplateFiles, substitute } from './template-files.js';
52
+ import { ESBUILD, ESBUILD_DECISION, patchPnpmWorkspace, pnpmWorkspaceFileFor, } from './pnpm-workspace-patcher.js';
53
+ import { collectTemplateFiles, substitute, templateTarget, } from './template-files.js';
47
54
  const DEFAULT_PACK_ID_FALLBACK = 'kindgi-pack';
48
55
  const DEFAULT_PACK_VERSION_FALLBACK = '0.1.0';
49
56
  const AUGMENT_SUBDIRS = ['agents', 'tools', 'guardrails', 'flows'];
@@ -199,14 +206,16 @@ export async function runInitAugment(inputs) {
199
206
  targetDir: inputs.targetDir,
200
207
  pkgJsonPath,
201
208
  specs: deps.specs,
202
- // The sample tools' schemas are Zod. An app with Zod keeps its own.
203
- ...(sample && { extraDependencies: [SAMPLE_ZOD_DEPENDENCY] }),
209
+ packageManager: deps.packageManager,
210
+ // Every primitive's schemas are Zod. An app with Zod keeps its own.
211
+ extraDependencies: [ZOD_DEPENDENCY],
204
212
  });
205
213
  if (patchResult.kind === 'err') {
206
214
  return { kind: 'error', stderr: patchResult.stderr, exitCode: 1 };
207
215
  }
208
216
  created.push(...patchResult.created);
209
217
  skipped.push(...patchResult.skipped);
218
+ const warnings = [...zodWarnings(pkgJson), ...patchResult.warnings];
210
219
  const nextSteps = augmentNextSteps(deps.packageManager, sample ? packId : undefined);
211
220
  const summary = {
212
221
  kind: 'augment',
@@ -217,6 +226,7 @@ export async function runInitAugment(inputs) {
217
226
  dependencies: deps.specs,
218
227
  created,
219
228
  skipped,
229
+ warnings,
220
230
  nextSteps,
221
231
  };
222
232
  const rendered = renderJson(summary, 'json');
@@ -229,6 +239,7 @@ export async function runInitAugment(inputs) {
229
239
  ` Kindgi added to ${inputs.targetDir} (augment mode).`,
230
240
  ` Pack id: ${packId} Version: ${packVersion}`,
231
241
  ` Wrote ${created.length} file${created.length === 1 ? '' : 's'}; skipped ${skipped.length}.`,
242
+ ...warnings.map((warning) => ` ⚠ ${warning}`),
232
243
  '',
233
244
  ' Next steps:',
234
245
  ...nextSteps.map((step) => ` ${step}`),
@@ -290,7 +301,36 @@ export function augmentNextSteps(pm, samplePackId) {
290
301
  }
291
302
  /** The sample's primitive folders, as augment mode lays them out under `kindgi/`. */
292
303
  const SAMPLE_PRIMITIVE_DIRS = ['agents', 'flows', 'guardrails', 'tools'];
293
- const SAMPLE_ZOD_DEPENDENCY = { name: 'zod', spec: '^4.0.0', section: 'dependencies' };
304
+ /** Zod, at the fresh templates' range (their `package.json.tmpl`). */
305
+ export const ZOD_DEPENDENCY = { name: 'zod', spec: '^4.0.0', section: 'dependencies' };
306
+ const DEPENDENCY_SECTIONS = [
307
+ 'dependencies',
308
+ 'devDependencies',
309
+ 'peerDependencies',
310
+ 'optionalDependencies',
311
+ ];
312
+ /**
313
+ * The app's own Zod is kept; one whose range excludes zod 4 is reported,
314
+ * since Kindgi's schemas, examples and skills are zod 4. A spec that isn't
315
+ * a semver range (`catalog:`, `workspace:*`, a tag) is taken on trust.
316
+ */
317
+ export function zodWarnings(pkg) {
318
+ for (const section of DEPENDENCY_SECTIONS) {
319
+ const deps = pkg[section];
320
+ if (deps === null || typeof deps !== 'object')
321
+ continue;
322
+ const spec = deps[ZOD_DEPENDENCY.name];
323
+ if (typeof spec !== 'string')
324
+ continue;
325
+ if (semver.validRange(spec) === null || semver.intersects(spec, ZOD_DEPENDENCY.spec)) {
326
+ return [];
327
+ }
328
+ return [
329
+ `zod: the app has zod ${spec} (${section}), left as is. Kindgi's tools, examples and skills use zod 4 — upgrade to zod ${ZOD_DEPENDENCY.spec} before writing Kindgi primitives.`,
330
+ ];
331
+ }
332
+ return [];
333
+ }
294
334
  /**
295
335
  * Copy the sample pack's primitives into `kindgi/<kind>/`, rendered as a
296
336
  * fresh sample pack renders them. The sample's tests stay out: the app
@@ -304,8 +344,7 @@ async function writeSamplePrimitives(args) {
304
344
  for (const rel of files.sort()) {
305
345
  if (/\.test\.ts(\.tmpl)?$/.test(rel))
306
346
  continue;
307
- const targetRel = rel.endsWith('.tmpl') ? rel.slice(0, -'.tmpl'.length) : rel;
308
- const dest = join(args.targetDir, 'kindgi', kind, targetRel);
347
+ const dest = join(args.targetDir, 'kindgi', kind, templateTarget(rel));
309
348
  if (!args.force && (await args.io.fileExists(dest))) {
310
349
  skipped.push(dest);
311
350
  continue;
@@ -411,13 +450,15 @@ async function writeAugmentFiles(args) {
411
450
  return { created, skipped };
412
451
  }
413
452
  /**
414
- * Apply the two file patchers (package.json + .gitignore) and turn
415
- * their outcomes into (created, skipped) rows for the summary.
416
- * Extracted so `runInitAugment` stays under the complexity ceiling.
453
+ * Apply the file patchers (package.json, .gitignore, .prettierignore and,
454
+ * for pnpm, pnpm-workspace.yaml) and turn their outcomes into (created,
455
+ * skipped) rows and warnings for the summary. Extracted so
456
+ * `runInitAugment` stays under the complexity ceiling.
417
457
  */
418
458
  async function applyAugmentPatches(args) {
419
459
  const created = [];
420
460
  const skipped = [];
461
+ const warnings = [];
421
462
  const patchPkg = await patchPackageJson(args.pkgJsonPath, args.specs, args.extraDependencies);
422
463
  if (patchPkg.kind === 'error') {
423
464
  return { kind: 'err', stderr: `Failed to patch ${args.pkgJsonPath}: ${patchPkg.message}\n` };
@@ -454,6 +495,44 @@ async function applyAugmentPatches(args) {
454
495
  if (patchPrettier.kind === 'patched') {
455
496
  created.push(`${prettierignorePath} (patched: +${patchPrettier.appended.join(', +')})`);
456
497
  }
457
- return { kind: 'ok', created, skipped };
498
+ if (args.packageManager === 'pnpm') {
499
+ const workspace = await decideEsbuildInPnpm(args.targetDir);
500
+ if (workspace.kind === 'err')
501
+ return workspace;
502
+ created.push(...workspace.created);
503
+ skipped.push(...workspace.skipped);
504
+ warnings.push(...workspace.warnings);
505
+ }
506
+ return { kind: 'ok', created, skipped, warnings };
507
+ }
508
+ /**
509
+ * A decision for esbuild's install script (`allowBuilds.esbuild: false`) in
510
+ * the `pnpm-workspace.yaml` pnpm reads for the app, unless it has one.
511
+ */
512
+ async function decideEsbuildInPnpm(targetDir) {
513
+ const path = await pnpmWorkspaceFileFor(targetDir);
514
+ const setting = `allowBuilds.${ESBUILD}`;
515
+ const result = await patchPnpmWorkspace(path);
516
+ const rows = { created: [], skipped: [], warnings: [] };
517
+ switch (result.kind) {
518
+ case 'error':
519
+ return { kind: 'err', stderr: `Failed to patch ${path}: ${result.message}\n` };
520
+ case 'created':
521
+ rows.created.push(`${path} (created: ${setting}: ${ESBUILD_DECISION})`);
522
+ break;
523
+ case 'patched':
524
+ rows.created.push(result.change === 'placeholder'
525
+ ? `${path} (patched: ${setting} set to ${ESBUILD_DECISION}, replacing pnpm's placeholder)`
526
+ : `${path} (patched: +${setting}: ${ESBUILD_DECISION})`);
527
+ break;
528
+ case 'already-decided':
529
+ rows.skipped.push(`${path} (${setting} already ${result.value})`);
530
+ break;
531
+ case 'refused':
532
+ rows.skipped.push(`${path} (not edited: ${result.reason})`);
533
+ rows.warnings.push(`pnpm: couldn't add ${setting}: ${ESBUILD_DECISION} to ${path} (${result.reason}). Add it by hand: without a decision for esbuild's install script, pnpm 11+ stops \`pnpm install\` with ERR_PNPM_IGNORED_BUILDS.`);
534
+ break;
535
+ }
536
+ return { kind: 'ok', ...rows };
458
537
  }
459
538
  //# sourceMappingURL=augment-scaffolder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"augment-scaffolder.js","sourceRoot":"","sources":["../../src/init/augment-scaffolder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"augment-scaffolder.js","sourceRoot":"","sources":["../../src/init/augment-scaffolder.ts"],"names":[],"mappings":"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"}