@promptbook/components 0.114.0-42 → 0.114.0-47

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 (103) hide show
  1. package/esm/index.es.js +43 -9
  2. package/esm/index.es.js.map +1 -1
  3. package/esm/src/book-2.0/agent-source/CreateAgentModelRequirementsOptions.d.ts +2 -0
  4. package/esm/src/cli/cli-commands/coder/add.d.ts +16 -0
  5. package/esm/src/cli/cli-commands/coder/agentCliOptions.d.ts +3 -2
  6. package/esm/src/cli/cli-commands/coder/augmentCoderAgentTeam.d.ts +7 -0
  7. package/esm/src/cli/cli-commands/coder/coderAgentRole.d.ts +16 -0
  8. package/esm/src/cli/cli-commands/coder/coderReferencedArtifacts.d.ts +8 -7
  9. package/esm/src/cli/cli-commands/coder/ensureCoderDefaultAgentFiles.d.ts +8 -0
  10. package/esm/src/cli/cli-commands/coder/ensureCoderDefaultAgentFiles.test.d.ts +1 -0
  11. package/esm/src/cli/cli-commands/coder/ensureCoderRoleAgentFile.d.ts +12 -0
  12. package/esm/src/cli/cli-commands/coder/generate-boilerplates.d.ts +1 -1
  13. package/esm/src/cli/cli-commands/coder/getCoderInitializationCommitPaths.d.ts +9 -0
  14. package/esm/src/cli/cli-commands/coder/initializeCoderProjectConfiguration.d.ts +7 -5
  15. package/esm/src/cli/cli-commands/coder/plan.d.ts +7 -0
  16. package/esm/src/cli/cli-commands/coder/planning/assertPlanningCommitSafe.d.ts +6 -0
  17. package/esm/src/cli/cli-commands/coder/planning/assertPlanningPrdCommitScope.d.ts +7 -0
  18. package/esm/src/cli/cli-commands/coder/planning/assertPlanningRuntimePath.d.ts +6 -0
  19. package/esm/src/cli/cli-commands/coder/planning/createPlanningTerminal.d.ts +8 -0
  20. package/esm/src/cli/cli-commands/coder/planning/createPlanningTerminal.test.d.ts +1 -0
  21. package/esm/src/cli/cli-commands/coder/planning/createPlanningWorkspace.d.ts +11 -0
  22. package/esm/src/cli/cli-commands/coder/planning/discussPlanningTurn.d.ts +15 -0
  23. package/esm/src/cli/cli-commands/coder/planning/fixtures/snapshotPlanningProject.d.ts +5 -0
  24. package/esm/src/cli/cli-commands/coder/planning/planningGitSync.test.d.ts +1 -0
  25. package/esm/src/cli/cli-commands/coder/planning/planningPackagedCli.test.d.ts +1 -0
  26. package/esm/src/cli/cli-commands/coder/planning/planningProtocol.d.ts +152 -0
  27. package/esm/src/cli/cli-commands/coder/planning/planningTeam.test.d.ts +1 -0
  28. package/esm/src/cli/cli-commands/coder/planning/preparePlanningChanges.d.ts +16 -0
  29. package/esm/src/cli/cli-commands/coder/planning/readPlanningContext.d.ts +6 -0
  30. package/esm/src/cli/cli-commands/coder/planning/resolvePlanningPath.d.ts +7 -0
  31. package/esm/src/cli/cli-commands/coder/planning/runPlanningHarness.d.ts +30 -0
  32. package/esm/src/cli/cli-commands/coder/planning/runPlanningHarness.test.d.ts +1 -0
  33. package/esm/src/cli/cli-commands/coder/planning/runPlanningSession.d.ts +21 -0
  34. package/esm/src/cli/cli-commands/coder/planning/runPlanningSession.test.d.ts +1 -0
  35. package/esm/src/cli/cli-commands/coder/planning/savePlanningChanges.d.ts +7 -0
  36. package/esm/src/cli/cli-commands/coder/printInitializationSummary.d.ts +2 -1
  37. package/esm/src/cli/cli-commands/coder/promptsReadmeTemplate.d.ts +13 -0
  38. package/esm/src/cli/cli-commands/coder/promptsReadmeTemplate.test.d.ts +1 -0
  39. package/esm/src/cli/cli-commands/coder/readCoderAgentBook.d.ts +8 -0
  40. package/esm/src/cli/cli-commands/coder/workspacePreflight.test.d.ts +1 -0
  41. package/esm/src/cli/cli-commands/coder.d.ts +1 -0
  42. package/esm/src/cli/cli-commands/common/LocalAgentBookCollection.d.ts +4 -2
  43. package/esm/src/cli/cli-commands/common/coderGitSyncCliOptions.d.ts +1 -1
  44. package/esm/src/cli/cli-commands/common/resolveLocalAgentSource.d.ts +8 -1
  45. package/esm/src/cli/cli-commands/common/validateCoderRunOptions.d.ts +6 -0
  46. package/esm/src/cli/cli-commands/common/workspaceRepository.d.ts +36 -0
  47. package/esm/src/cli/cli-commands/common/workspaceRepository.test.d.ts +1 -0
  48. package/esm/src/cli/cli-commands/common/workspaceRepositoryCliOptions.d.ts +11 -0
  49. package/esm/src/commitments/TEAM/TEAM.test.d.ts +1 -0
  50. package/esm/src/conversion/archive/loadJsZipModule.d.ts +10 -0
  51. package/esm/src/version.d.ts +1 -1
  52. package/package.json +1 -1
  53. package/umd/index.umd.js +43 -9
  54. package/umd/index.umd.js.map +1 -1
  55. package/umd/src/book-2.0/agent-source/CreateAgentModelRequirementsOptions.d.ts +2 -0
  56. package/umd/src/cli/cli-commands/coder/add.d.ts +16 -0
  57. package/umd/src/cli/cli-commands/coder/agentCliOptions.d.ts +3 -2
  58. package/umd/src/cli/cli-commands/coder/augmentCoderAgentTeam.d.ts +7 -0
  59. package/umd/src/cli/cli-commands/coder/coderAgentRole.d.ts +16 -0
  60. package/umd/src/cli/cli-commands/coder/coderReferencedArtifacts.d.ts +8 -7
  61. package/umd/src/cli/cli-commands/coder/ensureCoderDefaultAgentFiles.d.ts +8 -0
  62. package/umd/src/cli/cli-commands/coder/ensureCoderDefaultAgentFiles.test.d.ts +1 -0
  63. package/umd/src/cli/cli-commands/coder/ensureCoderRoleAgentFile.d.ts +12 -0
  64. package/umd/src/cli/cli-commands/coder/generate-boilerplates.d.ts +1 -1
  65. package/umd/src/cli/cli-commands/coder/getCoderInitializationCommitPaths.d.ts +9 -0
  66. package/umd/src/cli/cli-commands/coder/initializeCoderProjectConfiguration.d.ts +7 -5
  67. package/umd/src/cli/cli-commands/coder/plan.d.ts +7 -0
  68. package/umd/src/cli/cli-commands/coder/planning/assertPlanningCommitSafe.d.ts +6 -0
  69. package/umd/src/cli/cli-commands/coder/planning/assertPlanningPrdCommitScope.d.ts +7 -0
  70. package/umd/src/cli/cli-commands/coder/planning/assertPlanningRuntimePath.d.ts +6 -0
  71. package/umd/src/cli/cli-commands/coder/planning/createPlanningTerminal.d.ts +8 -0
  72. package/umd/src/cli/cli-commands/coder/planning/createPlanningTerminal.test.d.ts +1 -0
  73. package/umd/src/cli/cli-commands/coder/planning/createPlanningWorkspace.d.ts +11 -0
  74. package/umd/src/cli/cli-commands/coder/planning/discussPlanningTurn.d.ts +15 -0
  75. package/umd/src/cli/cli-commands/coder/planning/fixtures/snapshotPlanningProject.d.ts +5 -0
  76. package/umd/src/cli/cli-commands/coder/planning/planningGitSync.test.d.ts +1 -0
  77. package/umd/src/cli/cli-commands/coder/planning/planningPackagedCli.test.d.ts +1 -0
  78. package/umd/src/cli/cli-commands/coder/planning/planningProtocol.d.ts +152 -0
  79. package/umd/src/cli/cli-commands/coder/planning/planningTeam.test.d.ts +1 -0
  80. package/umd/src/cli/cli-commands/coder/planning/preparePlanningChanges.d.ts +16 -0
  81. package/umd/src/cli/cli-commands/coder/planning/readPlanningContext.d.ts +6 -0
  82. package/umd/src/cli/cli-commands/coder/planning/resolvePlanningPath.d.ts +7 -0
  83. package/umd/src/cli/cli-commands/coder/planning/runPlanningHarness.d.ts +30 -0
  84. package/umd/src/cli/cli-commands/coder/planning/runPlanningHarness.test.d.ts +1 -0
  85. package/umd/src/cli/cli-commands/coder/planning/runPlanningSession.d.ts +21 -0
  86. package/umd/src/cli/cli-commands/coder/planning/runPlanningSession.test.d.ts +1 -0
  87. package/umd/src/cli/cli-commands/coder/planning/savePlanningChanges.d.ts +7 -0
  88. package/umd/src/cli/cli-commands/coder/printInitializationSummary.d.ts +2 -1
  89. package/umd/src/cli/cli-commands/coder/promptsReadmeTemplate.d.ts +13 -0
  90. package/umd/src/cli/cli-commands/coder/promptsReadmeTemplate.test.d.ts +1 -0
  91. package/umd/src/cli/cli-commands/coder/readCoderAgentBook.d.ts +8 -0
  92. package/umd/src/cli/cli-commands/coder/workspacePreflight.test.d.ts +1 -0
  93. package/umd/src/cli/cli-commands/coder.d.ts +1 -0
  94. package/umd/src/cli/cli-commands/common/LocalAgentBookCollection.d.ts +4 -2
  95. package/umd/src/cli/cli-commands/common/coderGitSyncCliOptions.d.ts +1 -1
  96. package/umd/src/cli/cli-commands/common/resolveLocalAgentSource.d.ts +8 -1
  97. package/umd/src/cli/cli-commands/common/validateCoderRunOptions.d.ts +6 -0
  98. package/umd/src/cli/cli-commands/common/workspaceRepository.d.ts +36 -0
  99. package/umd/src/cli/cli-commands/common/workspaceRepository.test.d.ts +1 -0
  100. package/umd/src/cli/cli-commands/common/workspaceRepositoryCliOptions.d.ts +11 -0
  101. package/umd/src/commitments/TEAM/TEAM.test.d.ts +1 -0
  102. package/umd/src/conversion/archive/loadJsZipModule.d.ts +10 -0
  103. package/umd/src/version.d.ts +1 -1
@@ -21,7 +21,7 @@ export declare const CODER_GIT_SYNC_DESCRIPTION: string;
21
21
  * Registers the shared `--commit`, `--auto-push` and `--auto-pull` flags on a `ptbk coder` command.
22
22
  *
23
23
  * Note: Unlike `ptbk coder run`, which commits by default and opts out through `--no-commit`,
24
- * these commands never touch git unless the flags are used explicitly.
24
+ * these commands only mutate Git when the flags are used explicitly. Workspace detection always runs.
25
25
  *
26
26
  * @private internal utility of `promptbookCli`
27
27
  */
@@ -6,8 +6,12 @@ import type { string_book } from '../../../book-2.0/agent-source/string_book';
6
6
  * @private internal type of CLI agent resolution
7
7
  */
8
8
  export type ResolvedLocalAgentSource = {
9
+ /** Canonical identity used to bound recursive TEAM consultations. */
10
+ readonly agentUrl: string;
9
11
  readonly agentSource: string_book;
10
12
  readonly agentReferenceResolver: AgentReferenceResolver;
13
+ /** Resolves another Book in this collection, retaining its own inheritance and reference locations. */
14
+ readonly resolveAgentSource: (url: string, signal?: AbortSignal) => Promise<ResolvedLocalAgentSource>;
11
15
  /** Newly created books which the coder may include in its initialization commit. */
12
16
  readonly createdAgentBookPaths: ReadonlyArray<string>;
13
17
  };
@@ -16,4 +20,7 @@ export type ResolvedLocalAgentSource = {
16
20
  *
17
21
  * @private internal utility of CLI agent resolution
18
22
  */
19
- export declare function resolveLocalAgentSource(agentBookPath: string, currentWorkingDirectory: string): Promise<ResolvedLocalAgentSource>;
23
+ export declare function resolveLocalAgentSource(agentBookPath: string, currentWorkingDirectory: string, options?: {
24
+ readonly isInitializationAllowed?: boolean;
25
+ readonly signal?: AbortSignal;
26
+ }): Promise<ResolvedLocalAgentSource>;
@@ -0,0 +1,6 @@
1
+ import type { RunOptions } from '../../../../scripts/run-codex-prompts/cli/RunOptions';
2
+ /**
3
+ * Validates cross-flag constraints before workspace setup or the run starts.
4
+ * @private shared validation for Coder execution commands
5
+ */
6
+ export declare function validateCoderRunOptions(options: RunOptions): void;
@@ -0,0 +1,36 @@
1
+ import type { NormalizedQuestionsCliOptions } from './questionsCliOptions';
2
+ /**
3
+ * Resolved project directory and its enclosing working tree. Project artifacts belong to `projectPath`;
4
+ * Git paths and synchronization belong to `repositoryRoot`, which may be an enclosing monorepo.
5
+ *
6
+ * @private shared workspace context for Coder and workspace server commands
7
+ */
8
+ export type WorkspaceRepositoryContext = {
9
+ readonly projectPath: string;
10
+ readonly repositoryRoot?: string;
11
+ readonly gitDirectory?: string;
12
+ readonly repositoryStatus: 'missing' | 'reused' | 'initialized';
13
+ };
14
+ /**
15
+ * Command policy is separate from discovery: previews never initialize; explicit init needs no confirmation.
16
+ *
17
+ * @private shared workspace policy for Coder and workspace server commands
18
+ */
19
+ export type WorkspaceRepositoryPolicy = 'initialize' | 'mutate' | 'read-only';
20
+ /**
21
+ * Resolves the requested project once and discovers Git using Git itself, without requiring `HEAD`.
22
+ * Broken metadata, bare repositories, ownership errors and unavailable Git are failures, not missing repositories.
23
+ *
24
+ * @private shared workspace discovery for CLI commands
25
+ */
26
+ export declare function $resolveWorkspaceRepository(projectDirectory?: string): Promise<WorkspaceRepositoryContext>;
27
+ /**
28
+ * Checks the shared prerequisite before any project writes, Git synchronization, installation or startup.
29
+ * Only an affirmative interactive answer or an explicit initializer authorizes `git init`.
30
+ *
31
+ * @private shared workspace preflight for Coder and workspace server commands
32
+ */
33
+ export declare function $preflightWorkspaceRepository(options: {
34
+ readonly projectDirectory?: string;
35
+ readonly policy: WorkspaceRepositoryPolicy;
36
+ } & Partial<NormalizedQuestionsCliOptions>): Promise<WorkspaceRepositoryContext>;
@@ -0,0 +1,11 @@
1
+ import type { Command } from 'commander';
2
+ /**
3
+ * Shared explanation of the workspace prerequisite, independent of commit and synchronization settings.
4
+ * @private internal CLI help text
5
+ */
6
+ export declare const WORKSPACE_REPOSITORY_DESCRIPTION: string;
7
+ /**
8
+ * Adds shared Git help and the questions switch to every workspace command without duplicating existing options.
9
+ * @private internal registration helper for workspace CLI commands
10
+ */
11
+ export declare function addWorkspaceRepositoryOptions(command: Command): void;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Loads the ZIP archive library (`jszip`) on demand
3
+ *
4
+ * Note: [🐌] Loaded lazily to keep the startup of the `ptbk` CLI utility fast
5
+ *
6
+ * @private internal utility of `loadArchive` and `saveArchive`
7
+ */
8
+ export declare const loadJsZipModule: () => Promise<{
9
+ default: typeof import('jszip');
10
+ }>;
@@ -15,7 +15,7 @@ export declare const BOOK_LANGUAGE_VERSION: string_semantic_version;
15
15
  export declare const PROMPTBOOK_ENGINE_VERSION: string_promptbook_version;
16
16
  /**
17
17
  * Represents the version string of the Promptbook engine.
18
- * It follows semantic versioning (e.g., `0.114.0-40`).
18
+ * It follows semantic versioning (e.g., `0.114.0-47`).
19
19
  *
20
20
  * @generated
21
21
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@promptbook/components",
3
- "version": "0.114.0-42",
3
+ "version": "0.114.0-47",
4
4
  "description": "Promptbook: Create persistent AI agents that turn your company's scattered knowledge into action",
5
5
  "private": false,
6
6
  "sideEffects": false,
package/umd/index.umd.js CHANGED
@@ -33,7 +33,7 @@
33
33
  * @generated
34
34
  * @see https://github.com/webgptorg/promptbook
35
35
  */
36
- const PROMPTBOOK_ENGINE_VERSION = '0.114.0-42';
36
+ const PROMPTBOOK_ENGINE_VERSION = '0.114.0-47';
37
37
  /**
38
38
  * TODO: string_promptbook_version should be constrained to the all versions of Promptbook engine
39
39
  * Note: [💞] Ignore a discrepancy between file name and entity name
@@ -13817,6 +13817,18 @@
13817
13817
 
13818
13818
  Registers teammate agents that the current agent can consult via tools.
13819
13819
 
13820
+ The primary agent sends a question and relevant context to a teammate and receives an attributed answer.
13821
+ Each teammate uses its own Book. Declaring a team makes advisers available when relevant; it does not
13822
+ merge their rules into the primary agent or start every teammate automatically.
13823
+
13824
+ In \`ptbk coder run\` and \`ptbk coder plan\`, TEAM entries in the selected Book, its ancestors and imports
13825
+ use the existing reference rules: \`@Name\`, \`{Agent Name}\`, \`{./lawyer.book}\`, project paths such as
13826
+ \`{agents/lawyer.book}\`, and HTTP(S) Book URLs. Local advisers require no Agents Server. A remote Book
13827
+ must be readable through its normal endpoint; private or inaccessible sources return errors.
13828
+ Coding harnesses expose scoped command tools; planning uses restricted host tools and currently requires
13829
+ OpenAI Codex. Planning restrictions apply to every adviser, including custom Developer Books.
13830
+ The primary agent retains responsibility for the task, PRD proposals and final output.
13831
+
13820
13832
  ## Examples
13821
13833
 
13822
13834
  \`\`\`book
@@ -13828,7 +13840,7 @@
13828
13840
  `);
13829
13841
  }
13830
13842
  applyToAgentModelRequirements(requirements, content) {
13831
- var _a, _b, _c;
13843
+ var _a, _b, _c, _d;
13832
13844
  const trimmedContent = content.trim();
13833
13845
  if (!trimmedContent) {
13834
13846
  return requirements;
@@ -13842,20 +13854,30 @@
13842
13854
  const existingTeammates = ((_b = requirements._metadata) === null || _b === void 0 ? void 0 : _b.teammates) || [];
13843
13855
  const preResolvedProfiles = (((_c = requirements._metadata) === null || _c === void 0 ? void 0 : _c.preResolvedTeammateProfiles) || {});
13844
13856
  const resolvedTeammates = resolveTeamTeammateLabels(trimmedContent, teammates);
13857
+ const toolUrls = new Map(existingTeammates.map((teammate) => [teammate.toolName, teammate.url]));
13845
13858
  const teamEntries = resolvedTeammates.map((teammate) => {
13846
13859
  const profile = preResolvedProfiles[teammate.url];
13847
13860
  const resolvedLabel = (profile === null || profile === void 0 ? void 0 : profile.agentName) || teammate.label;
13848
13861
  const existingTeammate = existingTeammates.find((entry) => entry.url === teammate.url);
13862
+ const baseToolName = (existingTeammate === null || existingTeammate === void 0 ? void 0 : existingTeammate.toolName) || createTeamToolName(teammate.url, resolvedLabel);
13863
+ let toolName = baseToolName;
13864
+ let suffix = 1;
13865
+ // Explicit paths can identify distinct Books with the same display name or normalized label.
13866
+ while (toolUrls.has(toolName) && toolUrls.get(toolName) !== teammate.url) {
13867
+ toolName = `${baseToolName}_${++suffix}`;
13868
+ }
13869
+ toolUrls.set(toolName, teammate.url);
13849
13870
  return {
13850
- toolName: ((existingTeammate === null || existingTeammate === void 0 ? void 0 : existingTeammate.toolName) ||
13851
- createTeamToolName(teammate.url, resolvedLabel)),
13871
+ toolName: toolName,
13852
13872
  teammate: { ...teammate, label: resolvedLabel },
13853
13873
  agentName,
13854
13874
  description: (profile === null || profile === void 0 ? void 0 : profile.personaDescription) || null,
13855
13875
  };
13856
13876
  });
13857
- for (const entry of teamEntries) {
13858
- registerTeamTool(entry);
13877
+ if (!((_d = requirements._metadata) === null || _d === void 0 ? void 0 : _d.isTeamToolRegistrationDisabled)) {
13878
+ for (const entry of teamEntries) {
13879
+ registerTeamTool(entry);
13880
+ }
13859
13881
  }
13860
13882
  const existingTools = requirements.tools || [];
13861
13883
  const updatedTools = [...existingTools];
@@ -49812,9 +49834,15 @@
49812
49834
  if (preResolvedTeammateProfiles[teammate.url]) {
49813
49835
  continue;
49814
49836
  }
49815
- const profile = await profileResolver.resolveTeammateProfile(teammate.url);
49816
- if (profile) {
49817
- preResolvedTeammateProfiles[teammate.url] = profile;
49837
+ try {
49838
+ const profile = await profileResolver.resolveTeammateProfile(teammate.url);
49839
+ if (profile) {
49840
+ preResolvedTeammateProfiles[teammate.url] = profile;
49841
+ }
49842
+ }
49843
+ catch (error) {
49844
+ // One inaccessible adviser must not erase the names and roles of other callable teammates.
49845
+ console.warn(`Failed to resolve TEAM profile for ${teammate.url}:`, error);
49818
49846
  }
49819
49847
  }
49820
49848
  return {
@@ -50761,6 +50789,12 @@
50761
50789
  const parseResult = parseAgentSourceWithCommitments(agentSource);
50762
50790
  const filteredCommitments = filterCommitmentsForAgentModelRequirements(parseResult.commitments);
50763
50791
  let requirements = createInitialAgentModelRequirements(parseResult.agentName, modelName);
50792
+ if (options === null || options === void 0 ? void 0 : options.isTeamToolRegistrationDisabled) {
50793
+ requirements = {
50794
+ ...requirements,
50795
+ _metadata: { ...requirements._metadata, isTeamToolRegistrationDisabled: true },
50796
+ };
50797
+ }
50764
50798
  requirements = await applyCommitmentsToAgentModelRequirements(requirements, filteredCommitments, options);
50765
50799
  requirements = await augmentAgentModelRequirementsFromSource(requirements, parseResult, agentSource);
50766
50800
  requirements = await materializeInlineKnowledgeSources(requirements, options === null || options === void 0 ? void 0 : options.inlineKnowledgeSourceUploader);