@agimon-ai/po-core 0.0.0-alpha.20 → 0.0.0-alpha.21

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 (73) hide show
  1. package/LICENSE +149 -21
  2. package/NOTICE +41 -0
  3. package/dist/apiContracts.d.mts +54 -1
  4. package/dist/apiContracts.d.mts.map +1 -1
  5. package/dist/headlessHub.cjs +4 -0
  6. package/dist/headlessHub.cjs.map +1 -1
  7. package/dist/headlessHub.mjs +4 -0
  8. package/dist/headlessHub.mjs.map +1 -1
  9. package/dist/headlessServer.cjs +7 -2
  10. package/dist/headlessServer.cjs.map +1 -1
  11. package/dist/headlessServer.d.mts +2 -0
  12. package/dist/headlessServer.d.mts.map +1 -1
  13. package/dist/headlessServer.mjs +7 -2
  14. package/dist/headlessServer.mjs.map +1 -1
  15. package/dist/moduleResolution.cjs +24 -2
  16. package/dist/moduleResolution.cjs.map +1 -1
  17. package/dist/moduleResolution.d.mts +6 -0
  18. package/dist/moduleResolution.d.mts.map +1 -1
  19. package/dist/moduleResolution.mjs +24 -3
  20. package/dist/moduleResolution.mjs.map +1 -1
  21. package/dist/native.cjs +1 -0
  22. package/dist/native.d.mts +3 -3
  23. package/dist/native.mjs +2 -2
  24. package/dist/nodePlatform.cjs +1 -0
  25. package/dist/nodePlatform.cjs.map +1 -1
  26. package/dist/nodePlatform.d.mts +2 -0
  27. package/dist/nodePlatform.d.mts.map +1 -1
  28. package/dist/nodePlatform.mjs +1 -0
  29. package/dist/nodePlatform.mjs.map +1 -1
  30. package/dist/packageApiServer.cjs +11 -5
  31. package/dist/packageApiServer.cjs.map +1 -1
  32. package/dist/packageApiServer.d.mts.map +1 -1
  33. package/dist/packageApiServer.mjs +7 -1
  34. package/dist/packageApiServer.mjs.map +1 -1
  35. package/dist/platform.cjs +6 -0
  36. package/dist/platform.d.mts +2 -1
  37. package/dist/platform.mjs +2 -1
  38. package/dist/src/schemas/hubChannel.cjs.map +1 -1
  39. package/dist/src/schemas/hubChannel.d.mts +4 -0
  40. package/dist/src/schemas/hubChannel.d.mts.map +1 -1
  41. package/dist/src/schemas/hubChannel.mjs.map +1 -1
  42. package/dist/src/schemas/packageApi.cjs.map +1 -1
  43. package/dist/src/schemas/packageApi.d.mts +3 -0
  44. package/dist/src/schemas/packageApi.d.mts.map +1 -1
  45. package/dist/src/schemas/packageApi.mjs.map +1 -1
  46. package/dist/src/schemas/platform.cjs.map +1 -1
  47. package/dist/src/schemas/platform.d.mts +5 -0
  48. package/dist/src/schemas/platform.d.mts.map +1 -1
  49. package/dist/src/schemas/platform.mjs.map +1 -1
  50. package/dist/src/server/serverScope.cjs +4 -1
  51. package/dist/src/server/serverScope.cjs.map +1 -1
  52. package/dist/src/server/serverScope.d.mts.map +1 -1
  53. package/dist/src/server/serverScope.mjs +4 -1
  54. package/dist/src/server/serverScope.mjs.map +1 -1
  55. package/dist/src/services/sessionFiles/index.cjs +96 -0
  56. package/dist/src/services/sessionFiles/index.cjs.map +1 -0
  57. package/dist/src/services/sessionFiles/index.d.mts +33 -0
  58. package/dist/src/services/sessionFiles/index.d.mts.map +1 -0
  59. package/dist/src/services/sessionFiles/index.mjs +89 -0
  60. package/dist/src/services/sessionFiles/index.mjs.map +1 -0
  61. package/dist/src/services/sessionFiles/sessionDirectory.cjs +66 -0
  62. package/dist/src/services/sessionFiles/sessionDirectory.cjs.map +1 -0
  63. package/dist/src/services/sessionFiles/sessionDirectory.mjs +62 -0
  64. package/dist/src/services/sessionFiles/sessionDirectory.mjs.map +1 -0
  65. package/dist/src/systems/main/adapters/headlessSessionHost.cjs +18 -6
  66. package/dist/src/systems/main/adapters/headlessSessionHost.cjs.map +1 -1
  67. package/dist/src/systems/main/adapters/headlessSessionHost.d.mts.map +1 -1
  68. package/dist/src/systems/main/adapters/headlessSessionHost.mjs +16 -4
  69. package/dist/src/systems/main/adapters/headlessSessionHost.mjs.map +1 -1
  70. package/dist/src/web/types/nativeTemplate.d.mts +1 -1
  71. package/dist/src/web/types/nativeTemplate.d.mts.map +1 -1
  72. package/licenses/Codex-Apache-2.0.txt +201 -0
  73. package/package.json +8 -6
@@ -1 +1 @@
1
- {"version":3,"file":"headlessSessionHost.d.mts","names":[],"sources":["../../../../../src/systems/main/adapters/headlessSessionHost.ts"],"mappings":";;;;;KAgGK,YAAY;;wBA+BD,yBACd,kBAAkB,aAClB,UAAU,sBACT;;;;;;;;wBAyamB,0BAA0B,SAAS,6BAA6B,QAAQ"}
1
+ {"version":3,"file":"headlessSessionHost.d.mts","names":[],"sources":["../../../../../src/systems/main/adapters/headlessSessionHost.ts"],"mappings":";;;;;KAkGK,YAAY;;wBA+BD,yBACd,kBAAkB,aAClB,UAAU,sBACT;;;;;;;;wBAyamB,0BAA0B,SAAS,6BAA6B,QAAQ"}
@@ -1,3 +1,4 @@
1
+ import { piAgentDirectory } from "../../../services/piSettings/core.mjs";
1
2
  import { PO_AGENT_MODEL_ENTRY_TYPE } from "../../../schemas/agentModel.mjs";
2
3
  import { PO_BACKGROUND_WORK_CHANGED_EVENT, PO_BACKGROUND_WORK_SERVICE, readPoBackgroundWorkService } from "../../../schemas/backgroundWork.mjs";
3
4
  import "../../../../backgroundWork.mjs";
@@ -23,6 +24,7 @@ import { createNodeModelDependencies } from "../../../services/nodeModelDependen
23
24
  import { validateDirectHeadlessArgs } from "../../../services/piArgs/index.mjs";
24
25
  import { summarize } from "../../../services/piSummary/index.mjs";
25
26
  import { observe } from "../../../../serverTelemetry.mjs";
27
+ import { PO_SESSION_TEMP_DIR, prepareSessionEnvironment } from "../../../services/sessionFiles/index.mjs";
26
28
  import { formatToolPrompt } from "../../../services/toolPrompt/index.mjs";
27
29
  import { composeChildSessionHooks, createHeadlessChildSessionServiceProvider, createPoChildSessionHookRegistry } from "../../child/adapters/headlessChildSessionService.mjs";
28
30
  import { randomUUID } from "node:crypto";
@@ -360,12 +362,17 @@ async function repositoryInstructions(platform, repoRoot, agentDir, files) {
360
362
  * registered under its id for them to read instead of `process.env`, and released with it.
361
363
  */
362
364
  async function createHeadlessSessionHost(options) {
363
- const releaseEnvironment = registerPoSessionEnvironment(options.sessionId, options.environment);
365
+ let releaseEnvironment;
364
366
  try {
367
+ options = {
368
+ ...options,
369
+ environment: await prepareSessionEnvironment(options)
370
+ };
371
+ releaseEnvironment = registerPoSessionEnvironment(options.sessionId, options.environment);
365
372
  return await composeHeadlessSessionHost(options, releaseEnvironment);
366
373
  } catch (error) {
367
374
  removeContextDetail(options.sessionId, options.environment);
368
- releaseEnvironment();
375
+ releaseEnvironment?.();
369
376
  throw error;
370
377
  }
371
378
  }
@@ -430,7 +437,8 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
430
437
  formatToolPrompt(toolGuidance),
431
438
  skills,
432
439
  ...mapped.context,
433
- workingDirectoryLine
440
+ workingDirectoryLine,
441
+ options.environment["PO_SESSION_TEMP_DIR"] ? `Session temporary folder: ${options.environment[PO_SESSION_TEMP_DIR]}\nUse this folder for generated scratch files outside the workspace. Keep workspace edits in place and save important deliverables in session artifacts. Temporary files may be removed by the operating system.` : ""
434
442
  ].filter(Boolean).join("\n\n");
435
443
  };
436
444
  /** The last prompt a turn actually built, once one has. */
@@ -673,7 +681,11 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
673
681
  workspaceId: options.workspaceId,
674
682
  groupingRoot: options.groupingRoot ?? options.repoRoot,
675
683
  parentSessionId: options.parentSessionId,
676
- sessionProvenance: options.sessionProvenance
684
+ sessionProvenance: options.sessionProvenance,
685
+ files: {
686
+ agentDirectory: path.resolve(piAgentDirectory(options.environment, options.platform.homeDirectory)),
687
+ ...options.environment["PO_SESSION_TEMP_DIR"] === void 0 ? {} : { temporaryDirectory: options.environment[PO_SESSION_TEMP_DIR] }
688
+ }
677
689
  });
678
690
  }, BACKGROUND_CONTEXT);
679
691
  const agent = await runtime.lane.agent(BACKGROUND_CONTEXT);