@chainingintention/pi-web-cn 1.202606.11 → 1.202606.13

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 (82) hide show
  1. package/README.md +14 -7
  2. package/dist/cli.js +14 -2
  3. package/dist/cli.js.map +1 -1
  4. package/dist/client/assets/{CodeViewer-DzeGsHZ5.js → CodeViewer-D5OA_6r4.js} +1 -1
  5. package/dist/client/assets/{TerminalPanel-BghODb4T.js → TerminalPanel-kfPHfhUe.js} +9 -9
  6. package/dist/client/assets/index-MmspRbMF.js +2403 -0
  7. package/dist/client/index.html +1 -1
  8. package/dist/config.js +54 -3
  9. package/dist/config.js.map +1 -1
  10. package/dist/pi-web-plugins/updates/package.json +1 -1
  11. package/dist/pi-web-plugins/updates/pi-web-plugin.js +61 -71
  12. package/dist/pi-web-plugins/updates/updatesLogic.js +65 -0
  13. package/dist/pi-web-plugins/workspace-tasks/tasksPanelElement.js +1 -5
  14. package/dist/server/app.js +14 -6
  15. package/dist/server/app.js.map +1 -1
  16. package/dist/server/configRoutes.js +10 -0
  17. package/dist/server/configRoutes.js.map +1 -1
  18. package/dist/server/index.js +2 -2
  19. package/dist/server/index.js.map +1 -1
  20. package/dist/server/machines/machinePluginProxyRoutes.js +8 -0
  21. package/dist/server/machines/machinePluginProxyRoutes.js.map +1 -1
  22. package/dist/server/machines/machineRoutes.js +6 -0
  23. package/dist/server/machines/machineRoutes.js.map +1 -1
  24. package/dist/server/machines/machineService.js +97 -5
  25. package/dist/server/machines/machineService.js.map +1 -1
  26. package/dist/server/piWebPluginService.js +24 -4
  27. package/dist/server/piWebPluginService.js.map +1 -1
  28. package/dist/server/piWebStatus.js +149 -45
  29. package/dist/server/piWebStatus.js.map +1 -1
  30. package/dist/server/piWebStatusCache.js +32 -0
  31. package/dist/server/piWebStatusCache.js.map +1 -0
  32. package/dist/server/sessiond/sessionProxyRoutes.js +15 -1
  33. package/dist/server/sessiond/sessionProxyRoutes.js.map +1 -1
  34. package/dist/server/sessiond.js +34 -9
  35. package/dist/server/sessiond.js.map +1 -1
  36. package/dist/server/sessions/attachmentService.js +61 -0
  37. package/dist/server/sessions/attachmentService.js.map +1 -0
  38. package/dist/server/sessions/builtinCommands.js +21 -21
  39. package/dist/server/sessions/builtinCommands.js.map +1 -1
  40. package/dist/server/sessions/oauthLoginFlowService.js +21 -14
  41. package/dist/server/sessions/oauthLoginFlowService.js.map +1 -1
  42. package/dist/server/sessions/piSessionManagerGateway.js +96 -0
  43. package/dist/server/sessions/piSessionManagerGateway.js.map +1 -0
  44. package/dist/server/sessions/piSessionService.js +270 -452
  45. package/dist/server/sessions/piSessionService.js.map +1 -1
  46. package/dist/server/sessions/sessionArchiveStore.js +16 -2
  47. package/dist/server/sessions/sessionArchiveStore.js.map +1 -1
  48. package/dist/server/sessions/sessionCommandService.js +32 -28
  49. package/dist/server/sessions/sessionCommandService.js.map +1 -1
  50. package/dist/server/sessions/sessionRoutes.js +157 -47
  51. package/dist/server/sessions/sessionRoutes.js.map +1 -1
  52. package/dist/server/sessions/spawnSessionTool.js +36 -0
  53. package/dist/server/sessions/spawnSessionTool.js.map +1 -0
  54. package/dist/server/sessions/spawnTargetResolver.js +36 -0
  55. package/dist/server/sessions/spawnTargetResolver.js.map +1 -0
  56. package/dist/server/terminals/terminalRoutes.js +10 -4
  57. package/dist/server/terminals/terminalRoutes.js.map +1 -1
  58. package/dist/server/workingDirectory.js +44 -0
  59. package/dist/server/workingDirectory.js.map +1 -0
  60. package/dist/server/workspaces/fileSuggestions.js +96 -16
  61. package/dist/server/workspaces/fileSuggestions.js.map +1 -1
  62. package/dist/shared/apiTypes.d.ts +77 -5
  63. package/dist/shared/apiTypes.js +5 -1
  64. package/dist/shared/apiTypes.js.map +1 -1
  65. package/dist/shared/capabilities.js +27 -0
  66. package/dist/shared/capabilities.js.map +1 -0
  67. package/dist/shared/federatedRoutes.js +3 -0
  68. package/dist/shared/federatedRoutes.js.map +1 -1
  69. package/dist/shared/piWebStatusParsing.js +28 -0
  70. package/dist/shared/piWebStatusParsing.js.map +1 -1
  71. package/dist/shared/promptAttachments.js +73 -0
  72. package/dist/shared/promptAttachments.js.map +1 -0
  73. package/dist/shared/thinkingLevels.d.ts +27 -0
  74. package/dist/shared/thinkingLevels.js +31 -0
  75. package/dist/shared/thinkingLevels.js.map +1 -0
  76. package/dist/shared/workspaceDeletion.js +1 -1
  77. package/dist/shared/workspaceDeletion.js.map +1 -1
  78. package/docs/plugins.md +17 -10
  79. package/package.json +24 -13
  80. package/dist/client/assets/index-DATsMV4H.js +0 -2203
  81. package/dist/server/sessions/managementPermissionSystem.js +0 -94
  82. package/dist/server/sessions/managementPermissionSystem.js.map +0 -1
@@ -1,94 +0,0 @@
1
- import { createHash } from "node:crypto";
2
- import { mkdir, writeFile } from "node:fs/promises";
3
- import { join } from "node:path";
4
- export const PI_PERMISSION_SYSTEM_POLICY_AGENT_DIR = "PI_PERMISSION_SYSTEM_POLICY_AGENT_DIR";
5
- const MANAGEMENT_AGENT_TOOL_NAMES = ["read", "write", "edit", "ls", "grep", "find", "python"];
6
- export function createManagementPermissionSystemPolicy(context) {
7
- const tools = {
8
- "*": "deny",
9
- };
10
- for (const tool of managementAgentToolNames(context))
11
- tools[tool] = "allow";
12
- for (const tool of managementDeniedToolNames(context))
13
- tools[tool] = "deny";
14
- return {
15
- defaultPolicy: {
16
- tools: "deny",
17
- bash: "deny",
18
- mcp: "deny",
19
- skills: "deny",
20
- special: "deny",
21
- },
22
- tools,
23
- bash: { "*": "deny" },
24
- mcp: { "*": "deny" },
25
- skills: { "*": "deny" },
26
- special: {
27
- doom_loop: "deny",
28
- external_directory: "deny",
29
- },
30
- };
31
- }
32
- export function managementAgentToolNames(context) {
33
- const deny = new Set([...(context.tools?.deny ?? []), "bash", "shell", "terminal"]);
34
- const allow = context.tools?.allow;
35
- const safeTools = MANAGEMENT_AGENT_TOOL_NAMES.filter((tool) => !deny.has(tool));
36
- if (allow === undefined || allow.length === 0)
37
- return [...safeTools];
38
- return safeTools.filter((tool) => allow.includes(tool));
39
- }
40
- export async function writeManagementPermissionSystemPolicy(agentDir, cwd, context) {
41
- const policyAgentDir = join(agentDir, "management-embed", "permission-system", safePathSegment(context.user.rootUserId), createHash("sha256").update(cwd).digest("hex").slice(0, 16));
42
- await mkdir(policyAgentDir, { recursive: true });
43
- await writeFile(join(policyAgentDir, "pi-permissions.jsonc"), `${JSON.stringify(createManagementPermissionSystemPolicy(context), null, 2)}\n`, "utf8");
44
- return policyAgentDir;
45
- }
46
- let runtimeEnvironmentQueue = Promise.resolve();
47
- export async function withRuntimeCreationEnvironment(env, action) {
48
- const previousQueue = runtimeEnvironmentQueue;
49
- let releaseQueue = () => undefined;
50
- runtimeEnvironmentQueue = new Promise((resolve) => {
51
- releaseQueue = resolve;
52
- });
53
- await previousQueue;
54
- const previousValues = new Map();
55
- for (const [key, value] of Object.entries(env)) {
56
- previousValues.set(key, process.env[key]);
57
- if (value === undefined)
58
- Reflect.deleteProperty(process.env, key);
59
- else
60
- process.env[key] = value;
61
- }
62
- try {
63
- return await action();
64
- }
65
- finally {
66
- for (const [key, value] of previousValues) {
67
- if (value === undefined)
68
- Reflect.deleteProperty(process.env, key);
69
- else
70
- process.env[key] = value;
71
- }
72
- releaseQueue();
73
- }
74
- }
75
- function managementDeniedToolNames(context) {
76
- return [
77
- "bash",
78
- "shell",
79
- "terminal",
80
- "terminal-command-runs",
81
- "powershell",
82
- "pwsh",
83
- "mcp",
84
- "http",
85
- "webfetch",
86
- "websearch",
87
- ...(context.tools?.deny ?? []),
88
- ];
89
- }
90
- function safePathSegment(value) {
91
- const safe = value.trim().replace(/[^a-zA-Z0-9._-]+/g, "-").replace(/^-+|-+$/g, "");
92
- return safe === "" ? "user" : safe.slice(0, 80);
93
- }
94
- //# sourceMappingURL=managementPermissionSystem.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"managementPermissionSystem.js","sourceRoot":"","sources":["../../../src/server/sessions/managementPermissionSystem.ts"],"names":[],"mappings":"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"}