@cicctencent/agent-server 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.
- package/README.md +235 -0
- package/dist/cjs/agent/agent-server.d.ts +6 -0
- package/dist/cjs/agent/agent-server.d.ts.map +1 -0
- package/dist/cjs/agent/agent-server.js +412 -0
- package/dist/cjs/agent/agent-server.js.map +1 -0
- package/dist/cjs/connectors/index.d.ts +13 -0
- package/dist/cjs/connectors/index.d.ts.map +1 -0
- package/dist/cjs/connectors/index.js +37 -0
- package/dist/cjs/connectors/index.js.map +1 -0
- package/dist/cjs/index.d.ts +56 -0
- package/dist/cjs/index.d.ts.map +1 -0
- package/dist/cjs/index.js +169 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/kb/doc-parser.d.ts +24 -0
- package/dist/cjs/kb/doc-parser.d.ts.map +1 -0
- package/dist/cjs/kb/doc-parser.js +137 -0
- package/dist/cjs/kb/doc-parser.js.map +1 -0
- package/dist/cjs/kb/embedding-vector-index.d.ts +30 -0
- package/dist/cjs/kb/embedding-vector-index.d.ts.map +1 -0
- package/dist/cjs/kb/embedding-vector-index.js +75 -0
- package/dist/cjs/kb/embedding-vector-index.js.map +1 -0
- package/dist/cjs/kb/file-knowledge-base.d.ts +25 -0
- package/dist/cjs/kb/file-knowledge-base.d.ts.map +1 -0
- package/dist/cjs/kb/file-knowledge-base.js +200 -0
- package/dist/cjs/kb/file-knowledge-base.js.map +1 -0
- package/dist/cjs/mcp/api-bridge-client.d.ts +36 -0
- package/dist/cjs/mcp/api-bridge-client.d.ts.map +1 -0
- package/dist/cjs/mcp/api-bridge-client.js +143 -0
- package/dist/cjs/mcp/api-bridge-client.js.map +1 -0
- package/dist/cjs/mcp/api-bridge-types.d.ts +91 -0
- package/dist/cjs/mcp/api-bridge-types.d.ts.map +1 -0
- package/dist/cjs/mcp/api-bridge-types.js +8 -0
- package/dist/cjs/mcp/api-bridge-types.js.map +1 -0
- package/dist/cjs/mcp/body-template.d.ts +16 -0
- package/dist/cjs/mcp/body-template.d.ts.map +1 -0
- package/dist/cjs/mcp/body-template.js +62 -0
- package/dist/cjs/mcp/body-template.js.map +1 -0
- package/dist/cjs/mcp/openapi-importer.d.ts +24 -0
- package/dist/cjs/mcp/openapi-importer.d.ts.map +1 -0
- package/dist/cjs/mcp/openapi-importer.js +183 -0
- package/dist/cjs/mcp/openapi-importer.js.map +1 -0
- package/dist/cjs/mcp/template-builder.d.ts +53 -0
- package/dist/cjs/mcp/template-builder.d.ts.map +1 -0
- package/dist/cjs/mcp/template-builder.js +177 -0
- package/dist/cjs/mcp/template-builder.js.map +1 -0
- package/dist/cjs/model/automation.d.ts +34 -0
- package/dist/cjs/model/automation.d.ts.map +1 -0
- package/dist/cjs/model/automation.js +6 -0
- package/dist/cjs/model/automation.js.map +1 -0
- package/dist/cjs/package.json +3 -0
- package/dist/cjs/prompt/prompt-builder.d.ts +14 -0
- package/dist/cjs/prompt/prompt-builder.d.ts.map +1 -0
- package/dist/cjs/prompt/prompt-builder.js +113 -0
- package/dist/cjs/prompt/prompt-builder.js.map +1 -0
- package/dist/cjs/sandbox/local-sandbox.d.ts +70 -0
- package/dist/cjs/sandbox/local-sandbox.d.ts.map +1 -0
- package/dist/cjs/sandbox/local-sandbox.js +442 -0
- package/dist/cjs/sandbox/local-sandbox.js.map +1 -0
- package/dist/cjs/sandbox/process-code-sandbox.d.ts +25 -0
- package/dist/cjs/sandbox/process-code-sandbox.d.ts.map +1 -0
- package/dist/cjs/sandbox/process-code-sandbox.js +113 -0
- package/dist/cjs/sandbox/process-code-sandbox.js.map +1 -0
- package/dist/cjs/sandbox/sandbox-manager.d.ts +47 -0
- package/dist/cjs/sandbox/sandbox-manager.d.ts.map +1 -0
- package/dist/cjs/sandbox/sandbox-manager.js +126 -0
- package/dist/cjs/sandbox/sandbox-manager.js.map +1 -0
- package/dist/cjs/service/agent-profile.service.d.ts +27 -0
- package/dist/cjs/service/agent-profile.service.d.ts.map +1 -0
- package/dist/cjs/service/agent-profile.service.js +143 -0
- package/dist/cjs/service/agent-profile.service.js.map +1 -0
- package/dist/cjs/service/artifact.service.d.ts +33 -0
- package/dist/cjs/service/artifact.service.d.ts.map +1 -0
- package/dist/cjs/service/artifact.service.js +214 -0
- package/dist/cjs/service/artifact.service.js.map +1 -0
- package/dist/cjs/service/audit.service.d.ts +30 -0
- package/dist/cjs/service/audit.service.d.ts.map +1 -0
- package/dist/cjs/service/audit.service.js +169 -0
- package/dist/cjs/service/audit.service.js.map +1 -0
- package/dist/cjs/service/chat.service.d.ts +90 -0
- package/dist/cjs/service/chat.service.d.ts.map +1 -0
- package/dist/cjs/service/chat.service.js +433 -0
- package/dist/cjs/service/chat.service.js.map +1 -0
- package/dist/cjs/service/engine-pool.d.ts +6 -0
- package/dist/cjs/service/engine-pool.d.ts.map +1 -0
- package/dist/cjs/service/engine-pool.js +24 -0
- package/dist/cjs/service/engine-pool.js.map +1 -0
- package/dist/cjs/service/memory.service.d.ts +45 -0
- package/dist/cjs/service/memory.service.d.ts.map +1 -0
- package/dist/cjs/service/memory.service.js +193 -0
- package/dist/cjs/service/memory.service.js.map +1 -0
- package/dist/cjs/service/observability.service.d.ts +3 -0
- package/dist/cjs/service/observability.service.d.ts.map +1 -0
- package/dist/cjs/service/observability.service.js +10 -0
- package/dist/cjs/service/observability.service.js.map +1 -0
- package/dist/cjs/service/permission.service.d.ts +5 -0
- package/dist/cjs/service/permission.service.d.ts.map +1 -0
- package/dist/cjs/service/permission.service.js +40 -0
- package/dist/cjs/service/permission.service.js.map +1 -0
- package/dist/cjs/service/run-registry.d.ts +7 -0
- package/dist/cjs/service/run-registry.d.ts.map +1 -0
- package/dist/cjs/service/run-registry.js +44 -0
- package/dist/cjs/service/run-registry.js.map +1 -0
- package/dist/cjs/service/safety-audit.middleware.d.ts +3 -0
- package/dist/cjs/service/safety-audit.middleware.d.ts.map +1 -0
- package/dist/cjs/service/safety-audit.middleware.js +115 -0
- package/dist/cjs/service/safety-audit.middleware.js.map +1 -0
- package/dist/cjs/service/security-policy.service.d.ts +18 -0
- package/dist/cjs/service/security-policy.service.d.ts.map +1 -0
- package/dist/cjs/service/security-policy.service.js +46 -0
- package/dist/cjs/service/security-policy.service.js.map +1 -0
- package/dist/cjs/service/settings.service.d.ts +18 -0
- package/dist/cjs/service/settings.service.d.ts.map +1 -0
- package/dist/cjs/service/settings.service.js +222 -0
- package/dist/cjs/service/settings.service.js.map +1 -0
- package/dist/cjs/service/tool-risk.service.d.ts +3 -0
- package/dist/cjs/service/tool-risk.service.d.ts.map +1 -0
- package/dist/cjs/service/tool-risk.service.js +23 -0
- package/dist/cjs/service/tool-risk.service.js.map +1 -0
- package/dist/cjs/service/workspace.service.d.ts +33 -0
- package/dist/cjs/service/workspace.service.d.ts.map +1 -0
- package/dist/cjs/service/workspace.service.js +107 -0
- package/dist/cjs/service/workspace.service.js.map +1 -0
- package/dist/cjs/sse/sse-handler.d.ts +15 -0
- package/dist/cjs/sse/sse-handler.d.ts.map +1 -0
- package/dist/cjs/sse/sse-handler.js +56 -0
- package/dist/cjs/sse/sse-handler.js.map +1 -0
- package/dist/cjs/store/app-stores.d.ts +42 -0
- package/dist/cjs/store/app-stores.d.ts.map +1 -0
- package/dist/cjs/store/app-stores.js +226 -0
- package/dist/cjs/store/app-stores.js.map +1 -0
- package/dist/cjs/store/index.d.ts +3 -0
- package/dist/cjs/store/index.d.ts.map +1 -0
- package/dist/cjs/store/index.js +10 -0
- package/dist/cjs/store/index.js.map +1 -0
- package/dist/cjs/store/mcp-server-store.d.ts +35 -0
- package/dist/cjs/store/mcp-server-store.d.ts.map +1 -0
- package/dist/cjs/store/mcp-server-store.js +288 -0
- package/dist/cjs/store/mcp-server-store.js.map +1 -0
- package/dist/cjs/tool/builtin.d.ts +18 -0
- package/dist/cjs/tool/builtin.d.ts.map +1 -0
- package/dist/cjs/tool/builtin.js +43 -0
- package/dist/cjs/tool/builtin.js.map +1 -0
- package/dist/cjs/tool/local-executors.d.ts +22 -0
- package/dist/cjs/tool/local-executors.d.ts.map +1 -0
- package/dist/cjs/tool/local-executors.js +126 -0
- package/dist/cjs/tool/local-executors.js.map +1 -0
- package/dist/cjs/tool/tools/automation.d.ts +3 -0
- package/dist/cjs/tool/tools/automation.d.ts.map +1 -0
- package/dist/cjs/tool/tools/automation.js +190 -0
- package/dist/cjs/tool/tools/automation.js.map +1 -0
- package/dist/cjs/tool/tools/communication.d.ts +3 -0
- package/dist/cjs/tool/tools/communication.d.ts.map +1 -0
- package/dist/cjs/tool/tools/communication.js +302 -0
- package/dist/cjs/tool/tools/communication.js.map +1 -0
- package/dist/cjs/tool/tools/discovery.d.ts +3 -0
- package/dist/cjs/tool/tools/discovery.d.ts.map +1 -0
- package/dist/cjs/tool/tools/discovery.js +248 -0
- package/dist/cjs/tool/tools/discovery.js.map +1 -0
- package/dist/cjs/tool/tools/filesystem.d.ts +3 -0
- package/dist/cjs/tool/tools/filesystem.d.ts.map +1 -0
- package/dist/cjs/tool/tools/filesystem.js +403 -0
- package/dist/cjs/tool/tools/filesystem.js.map +1 -0
- package/dist/cjs/tool/tools/git.d.ts +3 -0
- package/dist/cjs/tool/tools/git.d.ts.map +1 -0
- package/dist/cjs/tool/tools/git.js +224 -0
- package/dist/cjs/tool/tools/git.js.map +1 -0
- package/dist/cjs/tool/tools/memory.d.ts +3 -0
- package/dist/cjs/tool/tools/memory.d.ts.map +1 -0
- package/dist/cjs/tool/tools/memory.js +126 -0
- package/dist/cjs/tool/tools/memory.js.map +1 -0
- package/dist/cjs/tool/tools/sandbox.d.ts +3 -0
- package/dist/cjs/tool/tools/sandbox.d.ts.map +1 -0
- package/dist/cjs/tool/tools/sandbox.js +413 -0
- package/dist/cjs/tool/tools/sandbox.js.map +1 -0
- package/dist/cjs/tool/tools/web-utils.d.ts +16 -0
- package/dist/cjs/tool/tools/web-utils.d.ts.map +1 -0
- package/dist/cjs/tool/tools/web-utils.js +131 -0
- package/dist/cjs/tool/tools/web-utils.js.map +1 -0
- package/dist/cjs/tool/tools/web.d.ts +3 -0
- package/dist/cjs/tool/tools/web.d.ts.map +1 -0
- package/dist/cjs/tool/tools/web.js +358 -0
- package/dist/cjs/tool/tools/web.js.map +1 -0
- package/dist/cjs/types.d.ts +523 -0
- package/dist/cjs/types.d.ts.map +1 -0
- package/dist/cjs/types.js +6 -0
- package/dist/cjs/types.js.map +1 -0
- package/dist/cjs/utils/data-dir.d.ts +8 -0
- package/dist/cjs/utils/data-dir.d.ts.map +1 -0
- package/dist/cjs/utils/data-dir.js +92 -0
- package/dist/cjs/utils/data-dir.js.map +1 -0
- package/dist/esm/agent/agent-server.d.ts +6 -0
- package/dist/esm/agent/agent-server.d.ts.map +1 -0
- package/dist/esm/agent/agent-server.js +409 -0
- package/dist/esm/agent/agent-server.js.map +1 -0
- package/dist/esm/connectors/index.d.ts +13 -0
- package/dist/esm/connectors/index.d.ts.map +1 -0
- package/dist/esm/connectors/index.js +30 -0
- package/dist/esm/connectors/index.js.map +1 -0
- package/dist/esm/index.d.ts +56 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +57 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/kb/doc-parser.d.ts +24 -0
- package/dist/esm/kb/doc-parser.d.ts.map +1 -0
- package/dist/esm/kb/doc-parser.js +100 -0
- package/dist/esm/kb/doc-parser.js.map +1 -0
- package/dist/esm/kb/embedding-vector-index.d.ts +30 -0
- package/dist/esm/kb/embedding-vector-index.d.ts.map +1 -0
- package/dist/esm/kb/embedding-vector-index.js +71 -0
- package/dist/esm/kb/embedding-vector-index.js.map +1 -0
- package/dist/esm/kb/file-knowledge-base.d.ts +25 -0
- package/dist/esm/kb/file-knowledge-base.d.ts.map +1 -0
- package/dist/esm/kb/file-knowledge-base.js +163 -0
- package/dist/esm/kb/file-knowledge-base.js.map +1 -0
- package/dist/esm/mcp/api-bridge-client.d.ts +36 -0
- package/dist/esm/mcp/api-bridge-client.d.ts.map +1 -0
- package/dist/esm/mcp/api-bridge-client.js +139 -0
- package/dist/esm/mcp/api-bridge-client.js.map +1 -0
- package/dist/esm/mcp/api-bridge-types.d.ts +91 -0
- package/dist/esm/mcp/api-bridge-types.d.ts.map +1 -0
- package/dist/esm/mcp/api-bridge-types.js +7 -0
- package/dist/esm/mcp/api-bridge-types.js.map +1 -0
- package/dist/esm/mcp/body-template.d.ts +16 -0
- package/dist/esm/mcp/body-template.d.ts.map +1 -0
- package/dist/esm/mcp/body-template.js +59 -0
- package/dist/esm/mcp/body-template.js.map +1 -0
- package/dist/esm/mcp/openapi-importer.d.ts +24 -0
- package/dist/esm/mcp/openapi-importer.d.ts.map +1 -0
- package/dist/esm/mcp/openapi-importer.js +177 -0
- package/dist/esm/mcp/openapi-importer.js.map +1 -0
- package/dist/esm/mcp/template-builder.d.ts +53 -0
- package/dist/esm/mcp/template-builder.d.ts.map +1 -0
- package/dist/esm/mcp/template-builder.js +173 -0
- package/dist/esm/mcp/template-builder.js.map +1 -0
- package/dist/esm/model/automation.d.ts +34 -0
- package/dist/esm/model/automation.d.ts.map +1 -0
- package/dist/esm/model/automation.js +5 -0
- package/dist/esm/model/automation.js.map +1 -0
- package/dist/esm/package.json +3 -0
- package/dist/esm/prompt/prompt-builder.d.ts +14 -0
- package/dist/esm/prompt/prompt-builder.d.ts.map +1 -0
- package/dist/esm/prompt/prompt-builder.js +109 -0
- package/dist/esm/prompt/prompt-builder.js.map +1 -0
- package/dist/esm/sandbox/local-sandbox.d.ts +70 -0
- package/dist/esm/sandbox/local-sandbox.d.ts.map +1 -0
- package/dist/esm/sandbox/local-sandbox.js +403 -0
- package/dist/esm/sandbox/local-sandbox.js.map +1 -0
- package/dist/esm/sandbox/process-code-sandbox.d.ts +25 -0
- package/dist/esm/sandbox/process-code-sandbox.d.ts.map +1 -0
- package/dist/esm/sandbox/process-code-sandbox.js +76 -0
- package/dist/esm/sandbox/process-code-sandbox.js.map +1 -0
- package/dist/esm/sandbox/sandbox-manager.d.ts +47 -0
- package/dist/esm/sandbox/sandbox-manager.d.ts.map +1 -0
- package/dist/esm/sandbox/sandbox-manager.js +88 -0
- package/dist/esm/sandbox/sandbox-manager.js.map +1 -0
- package/dist/esm/service/agent-profile.service.d.ts +27 -0
- package/dist/esm/service/agent-profile.service.d.ts.map +1 -0
- package/dist/esm/service/agent-profile.service.js +130 -0
- package/dist/esm/service/agent-profile.service.js.map +1 -0
- package/dist/esm/service/artifact.service.d.ts +33 -0
- package/dist/esm/service/artifact.service.d.ts.map +1 -0
- package/dist/esm/service/artifact.service.js +175 -0
- package/dist/esm/service/artifact.service.js.map +1 -0
- package/dist/esm/service/audit.service.d.ts +30 -0
- package/dist/esm/service/audit.service.d.ts.map +1 -0
- package/dist/esm/service/audit.service.js +131 -0
- package/dist/esm/service/audit.service.js.map +1 -0
- package/dist/esm/service/chat.service.d.ts +90 -0
- package/dist/esm/service/chat.service.d.ts.map +1 -0
- package/dist/esm/service/chat.service.js +388 -0
- package/dist/esm/service/chat.service.js.map +1 -0
- package/dist/esm/service/engine-pool.d.ts +6 -0
- package/dist/esm/service/engine-pool.d.ts.map +1 -0
- package/dist/esm/service/engine-pool.js +18 -0
- package/dist/esm/service/engine-pool.js.map +1 -0
- package/dist/esm/service/memory.service.d.ts +45 -0
- package/dist/esm/service/memory.service.d.ts.map +1 -0
- package/dist/esm/service/memory.service.js +154 -0
- package/dist/esm/service/memory.service.js.map +1 -0
- package/dist/esm/service/observability.service.d.ts +3 -0
- package/dist/esm/service/observability.service.d.ts.map +1 -0
- package/dist/esm/service/observability.service.js +5 -0
- package/dist/esm/service/observability.service.js.map +1 -0
- package/dist/esm/service/permission.service.d.ts +5 -0
- package/dist/esm/service/permission.service.d.ts.map +1 -0
- package/dist/esm/service/permission.service.js +33 -0
- package/dist/esm/service/permission.service.js.map +1 -0
- package/dist/esm/service/run-registry.d.ts +7 -0
- package/dist/esm/service/run-registry.d.ts.map +1 -0
- package/dist/esm/service/run-registry.js +37 -0
- package/dist/esm/service/run-registry.js.map +1 -0
- package/dist/esm/service/safety-audit.middleware.d.ts +3 -0
- package/dist/esm/service/safety-audit.middleware.d.ts.map +1 -0
- package/dist/esm/service/safety-audit.middleware.js +112 -0
- package/dist/esm/service/safety-audit.middleware.js.map +1 -0
- package/dist/esm/service/security-policy.service.d.ts +18 -0
- package/dist/esm/service/security-policy.service.d.ts.map +1 -0
- package/dist/esm/service/security-policy.service.js +42 -0
- package/dist/esm/service/security-policy.service.js.map +1 -0
- package/dist/esm/service/settings.service.d.ts +18 -0
- package/dist/esm/service/settings.service.d.ts.map +1 -0
- package/dist/esm/service/settings.service.js +181 -0
- package/dist/esm/service/settings.service.js.map +1 -0
- package/dist/esm/service/tool-risk.service.d.ts +3 -0
- package/dist/esm/service/tool-risk.service.d.ts.map +1 -0
- package/dist/esm/service/tool-risk.service.js +17 -0
- package/dist/esm/service/tool-risk.service.js.map +1 -0
- package/dist/esm/service/workspace.service.d.ts +33 -0
- package/dist/esm/service/workspace.service.d.ts.map +1 -0
- package/dist/esm/service/workspace.service.js +97 -0
- package/dist/esm/service/workspace.service.js.map +1 -0
- package/dist/esm/sse/sse-handler.d.ts +15 -0
- package/dist/esm/sse/sse-handler.d.ts.map +1 -0
- package/dist/esm/sse/sse-handler.js +49 -0
- package/dist/esm/sse/sse-handler.js.map +1 -0
- package/dist/esm/store/app-stores.d.ts +42 -0
- package/dist/esm/store/app-stores.d.ts.map +1 -0
- package/dist/esm/store/app-stores.js +181 -0
- package/dist/esm/store/app-stores.js.map +1 -0
- package/dist/esm/store/index.d.ts +3 -0
- package/dist/esm/store/index.d.ts.map +1 -0
- package/dist/esm/store/index.js +5 -0
- package/dist/esm/store/index.js.map +1 -0
- package/dist/esm/store/mcp-server-store.d.ts +35 -0
- package/dist/esm/store/mcp-server-store.d.ts.map +1 -0
- package/dist/esm/store/mcp-server-store.js +251 -0
- package/dist/esm/store/mcp-server-store.js.map +1 -0
- package/dist/esm/tool/builtin.d.ts +18 -0
- package/dist/esm/tool/builtin.d.ts.map +1 -0
- package/dist/esm/tool/builtin.js +40 -0
- package/dist/esm/tool/builtin.js.map +1 -0
- package/dist/esm/tool/local-executors.d.ts +22 -0
- package/dist/esm/tool/local-executors.d.ts.map +1 -0
- package/dist/esm/tool/local-executors.js +88 -0
- package/dist/esm/tool/local-executors.js.map +1 -0
- package/dist/esm/tool/tools/automation.d.ts +3 -0
- package/dist/esm/tool/tools/automation.d.ts.map +1 -0
- package/dist/esm/tool/tools/automation.js +154 -0
- package/dist/esm/tool/tools/automation.js.map +1 -0
- package/dist/esm/tool/tools/communication.d.ts +3 -0
- package/dist/esm/tool/tools/communication.d.ts.map +1 -0
- package/dist/esm/tool/tools/communication.js +266 -0
- package/dist/esm/tool/tools/communication.js.map +1 -0
- package/dist/esm/tool/tools/discovery.d.ts +3 -0
- package/dist/esm/tool/tools/discovery.d.ts.map +1 -0
- package/dist/esm/tool/tools/discovery.js +245 -0
- package/dist/esm/tool/tools/discovery.js.map +1 -0
- package/dist/esm/tool/tools/filesystem.d.ts +3 -0
- package/dist/esm/tool/tools/filesystem.d.ts.map +1 -0
- package/dist/esm/tool/tools/filesystem.js +367 -0
- package/dist/esm/tool/tools/filesystem.js.map +1 -0
- package/dist/esm/tool/tools/git.d.ts +3 -0
- package/dist/esm/tool/tools/git.d.ts.map +1 -0
- package/dist/esm/tool/tools/git.js +188 -0
- package/dist/esm/tool/tools/git.js.map +1 -0
- package/dist/esm/tool/tools/memory.d.ts +3 -0
- package/dist/esm/tool/tools/memory.d.ts.map +1 -0
- package/dist/esm/tool/tools/memory.js +123 -0
- package/dist/esm/tool/tools/memory.js.map +1 -0
- package/dist/esm/tool/tools/sandbox.d.ts +3 -0
- package/dist/esm/tool/tools/sandbox.d.ts.map +1 -0
- package/dist/esm/tool/tools/sandbox.js +377 -0
- package/dist/esm/tool/tools/sandbox.js.map +1 -0
- package/dist/esm/tool/tools/web-utils.d.ts +16 -0
- package/dist/esm/tool/tools/web-utils.d.ts.map +1 -0
- package/dist/esm/tool/tools/web-utils.js +88 -0
- package/dist/esm/tool/tools/web-utils.js.map +1 -0
- package/dist/esm/tool/tools/web.d.ts +3 -0
- package/dist/esm/tool/tools/web.d.ts.map +1 -0
- package/dist/esm/tool/tools/web.js +319 -0
- package/dist/esm/tool/tools/web.js.map +1 -0
- package/dist/esm/types.d.ts +523 -0
- package/dist/esm/types.d.ts.map +1 -0
- package/dist/esm/types.js +5 -0
- package/dist/esm/types.js.map +1 -0
- package/dist/esm/utils/data-dir.d.ts +8 -0
- package/dist/esm/utils/data-dir.d.ts.map +1 -0
- package/dist/esm/utils/data-dir.js +48 -0
- package/dist/esm/utils/data-dir.js.map +1 -0
- package/package.json +56 -0
|
@@ -0,0 +1,403 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// ============================================================
|
|
3
|
+
// 文件系统与终端工具
|
|
4
|
+
// ============================================================
|
|
5
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
8
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
9
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
10
|
+
}
|
|
11
|
+
Object.defineProperty(o, k2, desc);
|
|
12
|
+
}) : (function(o, m, k, k2) {
|
|
13
|
+
if (k2 === undefined) k2 = k;
|
|
14
|
+
o[k2] = m[k];
|
|
15
|
+
}));
|
|
16
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
17
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
18
|
+
}) : function(o, v) {
|
|
19
|
+
o["default"] = v;
|
|
20
|
+
});
|
|
21
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
22
|
+
var ownKeys = function(o) {
|
|
23
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
24
|
+
var ar = [];
|
|
25
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
26
|
+
return ar;
|
|
27
|
+
};
|
|
28
|
+
return ownKeys(o);
|
|
29
|
+
};
|
|
30
|
+
return function (mod) {
|
|
31
|
+
if (mod && mod.__esModule) return mod;
|
|
32
|
+
var result = {};
|
|
33
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
34
|
+
__setModuleDefault(result, mod);
|
|
35
|
+
return result;
|
|
36
|
+
};
|
|
37
|
+
})();
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.createFilesystemTools = createFilesystemTools;
|
|
40
|
+
function createFilesystemTools() {
|
|
41
|
+
return [
|
|
42
|
+
// ---- execute_command ----
|
|
43
|
+
{
|
|
44
|
+
definition: {
|
|
45
|
+
type: 'function',
|
|
46
|
+
function: {
|
|
47
|
+
name: 'execute_command',
|
|
48
|
+
description: 'Execute a shell command in the terminal. ' +
|
|
49
|
+
'IMPORTANT: Do NOT use heredoc (cat > file << EOF) to write scripts — the content will be truncated. ' +
|
|
50
|
+
'To write script files, use write_file (or append_file for long scripts), then use execute_command with a short command to run them. ' +
|
|
51
|
+
'SANDBOX RESTRICTIONS: Commands run inside a sandboxed directory. ' +
|
|
52
|
+
'NEVER use absolute paths (like /Users/..., /home/...) for file output — ALL file writes will be BLOCKED. ' +
|
|
53
|
+
'Use relative paths: "output/report.html", "output/gen.cjs", etc. ' +
|
|
54
|
+
'NEVER use `find /` for filesystem search — use `find . -name "file"` or `ls -la` instead.',
|
|
55
|
+
parameters: {
|
|
56
|
+
type: 'object',
|
|
57
|
+
properties: {
|
|
58
|
+
command: { type: 'string', description: 'Shell command to execute' },
|
|
59
|
+
timeout: { type: 'number', description: 'Timeout in ms, default 2000. For npm install use 60000.' },
|
|
60
|
+
},
|
|
61
|
+
required: ['command'],
|
|
62
|
+
},
|
|
63
|
+
},
|
|
64
|
+
},
|
|
65
|
+
executor: async (args, ctx) => {
|
|
66
|
+
const command = args.command;
|
|
67
|
+
if (!command || typeof command !== 'string') {
|
|
68
|
+
return [
|
|
69
|
+
'ERROR: execute_command called with empty `command`. You MUST provide a shell command.',
|
|
70
|
+
'',
|
|
71
|
+
'Correct usage:',
|
|
72
|
+
' execute_command({ command: "pnpm install pptxgenjs", timeout: 60000 })',
|
|
73
|
+
' execute_command({ command: "ls -la", timeout: 5000 })',
|
|
74
|
+
].join('\n');
|
|
75
|
+
}
|
|
76
|
+
const timeout = Number(args.timeout) || 2000;
|
|
77
|
+
return ctx.shell.exec(command, timeout);
|
|
78
|
+
},
|
|
79
|
+
category: 'builtin',
|
|
80
|
+
concurrent: false,
|
|
81
|
+
},
|
|
82
|
+
// ---- read_terminal ----
|
|
83
|
+
{
|
|
84
|
+
definition: {
|
|
85
|
+
type: 'function',
|
|
86
|
+
function: {
|
|
87
|
+
name: 'read_terminal',
|
|
88
|
+
description: 'Read the current terminal output (last N lines)',
|
|
89
|
+
parameters: {
|
|
90
|
+
type: 'object',
|
|
91
|
+
properties: {
|
|
92
|
+
lines: { type: 'number', description: 'Number of lines to read, default 50' },
|
|
93
|
+
},
|
|
94
|
+
},
|
|
95
|
+
},
|
|
96
|
+
},
|
|
97
|
+
executor: async (args, ctx) => {
|
|
98
|
+
return ctx.shell.read(args.lines || 50);
|
|
99
|
+
},
|
|
100
|
+
category: 'builtin',
|
|
101
|
+
concurrent: true,
|
|
102
|
+
},
|
|
103
|
+
// ---- write_file ----
|
|
104
|
+
{
|
|
105
|
+
definition: {
|
|
106
|
+
type: 'function',
|
|
107
|
+
function: {
|
|
108
|
+
name: 'write_file',
|
|
109
|
+
description: 'Write content to a file (creates parent directories if needed). CRITICAL: Both `path` and `content` MUST be non-empty. MAX content: ~3000 chars (JSON escaping inflates size). For larger content, use write_file for first chunk then append_file for each subsequent chunk.',
|
|
110
|
+
parameters: {
|
|
111
|
+
type: 'object',
|
|
112
|
+
properties: {
|
|
113
|
+
path: { type: 'string', description: 'File path to write to (use output/ subdirectory for generated files, e.g. "output/report.html")' },
|
|
114
|
+
content: { type: 'string', description: 'File content as a string. MUST NOT be empty. For scripts, include the FULL source code.' },
|
|
115
|
+
},
|
|
116
|
+
required: ['path', 'content'],
|
|
117
|
+
},
|
|
118
|
+
},
|
|
119
|
+
},
|
|
120
|
+
executor: async (args, ctx) => {
|
|
121
|
+
if (!ctx.fs)
|
|
122
|
+
return 'Error: FileSystem executor not available';
|
|
123
|
+
const filePath = args.path;
|
|
124
|
+
const content = args.content;
|
|
125
|
+
if (!filePath || typeof filePath !== 'string') {
|
|
126
|
+
return [
|
|
127
|
+
'ERROR: write_file called with empty `path`. You MUST provide both `path` and `content`.',
|
|
128
|
+
'',
|
|
129
|
+
'Correct usage:',
|
|
130
|
+
' write_file({ path: "generate.cjs", content: "const x = require(\'module\'); /* full script here */" })',
|
|
131
|
+
'',
|
|
132
|
+
'IMPORTANT: The `content` field should contain your full script source code as a string.',
|
|
133
|
+
].join('\n');
|
|
134
|
+
}
|
|
135
|
+
if (content === undefined || content === null) {
|
|
136
|
+
return [
|
|
137
|
+
'ERROR: write_file called with empty `content`. You MUST provide the file content.',
|
|
138
|
+
'',
|
|
139
|
+
'Correct usage:',
|
|
140
|
+
' write_file({ path: "' + filePath + '", content: "<your script source code here>" })',
|
|
141
|
+
].join('\n');
|
|
142
|
+
}
|
|
143
|
+
await ctx.fs.writeFile(filePath, content);
|
|
144
|
+
// 日志:确认文件写入位置(沙箱 vs 全局 data/)
|
|
145
|
+
const sandbox = ctx.custom?.sandbox;
|
|
146
|
+
if (sandbox?.rootDir) {
|
|
147
|
+
console.log(`[write_file] ${filePath} → sandbox: ${sandbox.rootDir}`);
|
|
148
|
+
}
|
|
149
|
+
else {
|
|
150
|
+
console.warn(`[write_file] ${filePath} → NO SANDBOX (writing to data/ dir)`);
|
|
151
|
+
}
|
|
152
|
+
// 截断抢救模式:内容被部分恢复,提醒 LLM 补充剩余内容
|
|
153
|
+
if (args._rescued) {
|
|
154
|
+
return [
|
|
155
|
+
`File written (PARTIAL — content was truncated and rescued): ${filePath}`,
|
|
156
|
+
`Written ${content.length} chars. The ORIGINAL content was truncated by the output limit.`,
|
|
157
|
+
'',
|
|
158
|
+
'You MUST use append_file to add the REMAINING content:',
|
|
159
|
+
' append_file({ path: "' + filePath + '", content: "<remaining content>" })',
|
|
160
|
+
'',
|
|
161
|
+
'If your file is a JSON data file for create_presentation/create_document/create_pdf,',
|
|
162
|
+
'make sure the JSON is properly closed after appending (add trailing ] and }).',
|
|
163
|
+
].join('\n');
|
|
164
|
+
}
|
|
165
|
+
return `File written: ${filePath}`;
|
|
166
|
+
},
|
|
167
|
+
category: 'builtin',
|
|
168
|
+
concurrent: false,
|
|
169
|
+
},
|
|
170
|
+
// ---- append_file ----
|
|
171
|
+
{
|
|
172
|
+
definition: {
|
|
173
|
+
type: 'function',
|
|
174
|
+
function: {
|
|
175
|
+
name: 'append_file',
|
|
176
|
+
description: 'Append content to a file (creates the file if it does not exist). ' +
|
|
177
|
+
'Use this to build large scripts incrementally: write_file for the first chunk, ' +
|
|
178
|
+
'then append_file for subsequent chunks. Each call adds to the end of the file. ' +
|
|
179
|
+
'CRITICAL: Both `path` and `content` MUST be non-empty.',
|
|
180
|
+
parameters: {
|
|
181
|
+
type: 'object',
|
|
182
|
+
properties: {
|
|
183
|
+
path: { type: 'string', description: 'File path to append to (use output/ subdirectory, e.g. "output/generate.py")' },
|
|
184
|
+
content: { type: 'string', description: 'Content to append. MUST NOT be empty.' },
|
|
185
|
+
},
|
|
186
|
+
required: ['path', 'content'],
|
|
187
|
+
},
|
|
188
|
+
},
|
|
189
|
+
},
|
|
190
|
+
executor: async (args, ctx) => {
|
|
191
|
+
if (!ctx.fs)
|
|
192
|
+
return 'Error: FileSystem executor not available';
|
|
193
|
+
const filePath = args.path;
|
|
194
|
+
const content = args.content;
|
|
195
|
+
if (!filePath || typeof filePath !== 'string') {
|
|
196
|
+
return 'ERROR: append_file requires a non-empty `path` parameter.';
|
|
197
|
+
}
|
|
198
|
+
if (!content) {
|
|
199
|
+
return 'ERROR: append_file requires non-empty `content` parameter.';
|
|
200
|
+
}
|
|
201
|
+
if (ctx.fs.appendFile) {
|
|
202
|
+
await ctx.fs.appendFile(filePath, content);
|
|
203
|
+
}
|
|
204
|
+
else {
|
|
205
|
+
// Fallback: read existing + write combined
|
|
206
|
+
let existing = '';
|
|
207
|
+
try {
|
|
208
|
+
existing = await ctx.fs.readFile(filePath);
|
|
209
|
+
}
|
|
210
|
+
catch { /* file doesn't exist yet */ }
|
|
211
|
+
await ctx.fs.writeFile(filePath, existing + content);
|
|
212
|
+
}
|
|
213
|
+
// 日志:确认文件写入位置
|
|
214
|
+
const sandbox = ctx.custom?.sandbox;
|
|
215
|
+
if (sandbox?.rootDir) {
|
|
216
|
+
console.log(`[append_file] ${filePath} → sandbox: ${sandbox.rootDir}`);
|
|
217
|
+
}
|
|
218
|
+
else {
|
|
219
|
+
console.warn(`[append_file] ${filePath} → NO SANDBOX (writing to data/ dir)`);
|
|
220
|
+
}
|
|
221
|
+
// 截断抢救模式
|
|
222
|
+
if (args._rescued) {
|
|
223
|
+
return [
|
|
224
|
+
`Content appended (PARTIAL — rescued from truncation): ${filePath}`,
|
|
225
|
+
`Appended ${content.length} chars. Some content may have been lost.`,
|
|
226
|
+
'Continue with append_file to add any remaining content.',
|
|
227
|
+
].join('\n');
|
|
228
|
+
}
|
|
229
|
+
return `Content appended to: ${filePath}`;
|
|
230
|
+
},
|
|
231
|
+
category: 'builtin',
|
|
232
|
+
concurrent: false,
|
|
233
|
+
},
|
|
234
|
+
// ---- read_file ----
|
|
235
|
+
{
|
|
236
|
+
definition: {
|
|
237
|
+
type: 'function',
|
|
238
|
+
function: {
|
|
239
|
+
name: 'read_file',
|
|
240
|
+
description: 'Read the contents of a file',
|
|
241
|
+
parameters: {
|
|
242
|
+
type: 'object',
|
|
243
|
+
properties: {
|
|
244
|
+
path: { type: 'string', description: 'File path to read' },
|
|
245
|
+
},
|
|
246
|
+
required: ['path'],
|
|
247
|
+
},
|
|
248
|
+
},
|
|
249
|
+
},
|
|
250
|
+
executor: async (args, ctx) => {
|
|
251
|
+
if (!ctx.fs)
|
|
252
|
+
return 'Error: FileSystem executor not available';
|
|
253
|
+
const filePath = args.path;
|
|
254
|
+
if (!filePath || typeof filePath !== 'string') {
|
|
255
|
+
return 'Error: `path` parameter is required and must be a non-empty string.';
|
|
256
|
+
}
|
|
257
|
+
return ctx.fs.readFile(filePath);
|
|
258
|
+
},
|
|
259
|
+
category: 'builtin',
|
|
260
|
+
concurrent: true,
|
|
261
|
+
},
|
|
262
|
+
// ---- search_code ----
|
|
263
|
+
// 在项目目录中搜索代码(正则/文件名)
|
|
264
|
+
{
|
|
265
|
+
definition: {
|
|
266
|
+
type: 'function',
|
|
267
|
+
function: {
|
|
268
|
+
name: 'search_code',
|
|
269
|
+
description: 'Search for code patterns in a directory using file glob patterns and content regex matching. ' +
|
|
270
|
+
'Returns matching files and line numbers with context. ' +
|
|
271
|
+
'Use this to find function definitions, usages, TODO comments, or any text pattern in a codebase.',
|
|
272
|
+
parameters: {
|
|
273
|
+
type: 'object',
|
|
274
|
+
properties: {
|
|
275
|
+
pattern: { type: 'string', description: 'Regex pattern to search in file contents (e.g. "function\\s+\\w+" or "TODO")' },
|
|
276
|
+
path: { type: 'string', description: 'Root directory to search (default: sandbox root)' },
|
|
277
|
+
glob: { type: 'string', description: 'File glob pattern to filter files (e.g. "**/*.ts" for TypeScript files, default: all files)' },
|
|
278
|
+
maxResults: { type: 'number', description: 'Maximum number of matches to return (default: 50)' },
|
|
279
|
+
caseSensitive: { type: 'boolean', description: 'Case sensitive search (default: false)' },
|
|
280
|
+
},
|
|
281
|
+
required: ['pattern'],
|
|
282
|
+
},
|
|
283
|
+
},
|
|
284
|
+
},
|
|
285
|
+
executor: async (args, ctx) => {
|
|
286
|
+
try {
|
|
287
|
+
const fastGlob = await Promise.resolve().then(() => __importStar(require('fast-glob')));
|
|
288
|
+
const fs = await Promise.resolve().then(() => __importStar(require('fs')));
|
|
289
|
+
const path = await Promise.resolve().then(() => __importStar(require('path')));
|
|
290
|
+
const sandbox = ctx.custom?.sandbox;
|
|
291
|
+
const rootPath = args.path || sandbox?.rootDir || process.cwd();
|
|
292
|
+
const pattern = args.pattern;
|
|
293
|
+
const globPattern = args.glob || '**/*';
|
|
294
|
+
const maxResults = args.maxResults || 50;
|
|
295
|
+
const caseSensitive = args.caseSensitive;
|
|
296
|
+
const regex = new RegExp(pattern, caseSensitive ? 'g' : 'gi');
|
|
297
|
+
const files = await fastGlob.default(globPattern, {
|
|
298
|
+
cwd: rootPath,
|
|
299
|
+
absolute: true,
|
|
300
|
+
ignore: ['**/node_modules/**', '**/.git/**', '**/dist/**', '**/build/**'],
|
|
301
|
+
});
|
|
302
|
+
const results = [];
|
|
303
|
+
let matchCount = 0;
|
|
304
|
+
for (const filePath of files) {
|
|
305
|
+
if (matchCount >= maxResults)
|
|
306
|
+
break;
|
|
307
|
+
try {
|
|
308
|
+
const content = fs.readFileSync(filePath, 'utf-8');
|
|
309
|
+
const lines = content.split('\n');
|
|
310
|
+
const relPath = path.relative(rootPath, filePath);
|
|
311
|
+
for (let i = 0; i < lines.length; i++) {
|
|
312
|
+
if (matchCount >= maxResults)
|
|
313
|
+
break;
|
|
314
|
+
regex.lastIndex = 0;
|
|
315
|
+
if (regex.test(lines[i])) {
|
|
316
|
+
results.push(`${relPath}:${i + 1}: ${lines[i].trim()}`);
|
|
317
|
+
matchCount++;
|
|
318
|
+
}
|
|
319
|
+
}
|
|
320
|
+
}
|
|
321
|
+
catch { /* skip binary/unreadable files */ }
|
|
322
|
+
}
|
|
323
|
+
if (results.length === 0) {
|
|
324
|
+
return `No matches found for pattern "${pattern}" in ${files.length} files.`;
|
|
325
|
+
}
|
|
326
|
+
return `Found ${matchCount} match(es) in ${files.length} files:\n\n${results.join('\n')}`;
|
|
327
|
+
}
|
|
328
|
+
catch (e) {
|
|
329
|
+
return `ERROR: ${e.message || e}`;
|
|
330
|
+
}
|
|
331
|
+
},
|
|
332
|
+
category: 'builtin',
|
|
333
|
+
concurrent: true,
|
|
334
|
+
},
|
|
335
|
+
// ---- edit_file ----
|
|
336
|
+
// 精确搜索替换编辑文件(而非全量覆写)
|
|
337
|
+
{
|
|
338
|
+
definition: {
|
|
339
|
+
type: 'function',
|
|
340
|
+
function: {
|
|
341
|
+
name: 'edit_file',
|
|
342
|
+
description: 'Edit a file by replacing a specific text block with new content. ' +
|
|
343
|
+
'More precise than write_file for making targeted changes without rewriting the entire file. ' +
|
|
344
|
+
'The oldText must match exactly (including whitespace/indentation). ' +
|
|
345
|
+
'If oldText appears multiple times, all occurrences are replaced unless replaceAll is false.',
|
|
346
|
+
parameters: {
|
|
347
|
+
type: 'object',
|
|
348
|
+
properties: {
|
|
349
|
+
path: { type: 'string', description: 'File path (relative to sandbox root)' },
|
|
350
|
+
oldText: { type: 'string', description: 'The exact text to find and replace (must match exactly including whitespace)' },
|
|
351
|
+
newText: { type: 'string', description: 'The replacement text' },
|
|
352
|
+
replaceAll: { type: 'boolean', description: 'Replace all occurrences (default: true). If false, only replace the first match.' },
|
|
353
|
+
},
|
|
354
|
+
required: ['path', 'oldText', 'newText'],
|
|
355
|
+
},
|
|
356
|
+
},
|
|
357
|
+
},
|
|
358
|
+
executor: async (args, ctx) => {
|
|
359
|
+
try {
|
|
360
|
+
const filePath = args.path;
|
|
361
|
+
const oldText = args.oldText;
|
|
362
|
+
const newText = args.newText;
|
|
363
|
+
const replaceAll = args.replaceAll !== false;
|
|
364
|
+
const sandbox = ctx.custom?.sandbox;
|
|
365
|
+
if (!sandbox)
|
|
366
|
+
return 'ERROR: Sandbox not available.';
|
|
367
|
+
const fsExec = sandbox.getFileSystemExecutor();
|
|
368
|
+
// 读取当前内容
|
|
369
|
+
let content;
|
|
370
|
+
try {
|
|
371
|
+
content = await fsExec.readFile(filePath);
|
|
372
|
+
}
|
|
373
|
+
catch {
|
|
374
|
+
return `ERROR: File "${filePath}" not found.`;
|
|
375
|
+
}
|
|
376
|
+
// 检查 oldText 是否存在
|
|
377
|
+
if (!content.includes(oldText)) {
|
|
378
|
+
return `ERROR: oldText not found in "${filePath}". Make sure the text matches exactly (including whitespace and indentation).`;
|
|
379
|
+
}
|
|
380
|
+
// 执行替换
|
|
381
|
+
let newContent;
|
|
382
|
+
if (replaceAll) {
|
|
383
|
+
newContent = content.split(oldText).join(newText);
|
|
384
|
+
}
|
|
385
|
+
else {
|
|
386
|
+
const idx = content.indexOf(oldText);
|
|
387
|
+
newContent = content.slice(0, idx) + newText + content.slice(idx + oldText.length);
|
|
388
|
+
}
|
|
389
|
+
// 写回文件
|
|
390
|
+
await fsExec.writeFile(filePath, newContent);
|
|
391
|
+
const occurrences = replaceAll ? content.split(oldText).length - 1 : 1;
|
|
392
|
+
return `File "${filePath}" updated successfully. Replaced ${occurrences} occurrence(s).`;
|
|
393
|
+
}
|
|
394
|
+
catch (e) {
|
|
395
|
+
return `ERROR: ${e.message || e}`;
|
|
396
|
+
}
|
|
397
|
+
},
|
|
398
|
+
category: 'builtin',
|
|
399
|
+
concurrent: false,
|
|
400
|
+
},
|
|
401
|
+
];
|
|
402
|
+
}
|
|
403
|
+
//# sourceMappingURL=filesystem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"filesystem.js","sourceRoot":"","sources":["../../../../src/tool/tools/filesystem.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git.d.ts","sourceRoot":"","sources":["../../../../src/tool/tools/git.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAW,MAAM,yBAAyB,CAAC;AAEvE,wBAAgB,cAAc,IAAI,cAAc,EAAE,CAiLjD"}
|
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// ============================================================
|
|
3
|
+
// Git 工具:git_status, git_diff, git_commit, git_log
|
|
4
|
+
// ============================================================
|
|
5
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
8
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
9
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
10
|
+
}
|
|
11
|
+
Object.defineProperty(o, k2, desc);
|
|
12
|
+
}) : (function(o, m, k, k2) {
|
|
13
|
+
if (k2 === undefined) k2 = k;
|
|
14
|
+
o[k2] = m[k];
|
|
15
|
+
}));
|
|
16
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
17
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
18
|
+
}) : function(o, v) {
|
|
19
|
+
o["default"] = v;
|
|
20
|
+
});
|
|
21
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
22
|
+
var ownKeys = function(o) {
|
|
23
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
24
|
+
var ar = [];
|
|
25
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
26
|
+
return ar;
|
|
27
|
+
};
|
|
28
|
+
return ownKeys(o);
|
|
29
|
+
};
|
|
30
|
+
return function (mod) {
|
|
31
|
+
if (mod && mod.__esModule) return mod;
|
|
32
|
+
var result = {};
|
|
33
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
34
|
+
__setModuleDefault(result, mod);
|
|
35
|
+
return result;
|
|
36
|
+
};
|
|
37
|
+
})();
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.createGitTools = createGitTools;
|
|
40
|
+
function createGitTools() {
|
|
41
|
+
return [
|
|
42
|
+
// ---- git_status ----
|
|
43
|
+
// 查看 Git 仓库状态
|
|
44
|
+
{
|
|
45
|
+
definition: {
|
|
46
|
+
type: 'function',
|
|
47
|
+
function: {
|
|
48
|
+
name: 'git_status',
|
|
49
|
+
description: 'Show the working tree status of a Git repository. Returns staged, modified, and untracked files. ' +
|
|
50
|
+
'Use this to understand the current state of a codebase before making changes.',
|
|
51
|
+
parameters: {
|
|
52
|
+
type: 'object',
|
|
53
|
+
properties: {
|
|
54
|
+
repoPath: { type: 'string', description: 'Path to the Git repository (default: sandbox root)' },
|
|
55
|
+
},
|
|
56
|
+
},
|
|
57
|
+
},
|
|
58
|
+
},
|
|
59
|
+
executor: async (args, ctx) => {
|
|
60
|
+
try {
|
|
61
|
+
const _simpleGit = await Promise.resolve().then(() => __importStar(require("simple-git")));
|
|
62
|
+
const sandbox = ctx.custom?.sandbox;
|
|
63
|
+
const repoPath = args.repoPath || sandbox?.rootDir || process.cwd();
|
|
64
|
+
const git = _simpleGit.default ? _simpleGit.default(repoPath) : _simpleGit(repoPath);
|
|
65
|
+
const status = await git.status();
|
|
66
|
+
const lines = [`Branch: ${status.current}`];
|
|
67
|
+
if (status.ahead)
|
|
68
|
+
lines.push(`Ahead: ${status.ahead}`);
|
|
69
|
+
if (status.behind)
|
|
70
|
+
lines.push(`Behind: ${status.behind}`);
|
|
71
|
+
if (status.staged.length)
|
|
72
|
+
lines.push(`Staged: ${status.staged.join(', ')}`);
|
|
73
|
+
if (status.modified.length)
|
|
74
|
+
lines.push(`Modified: ${status.modified.join(', ')}`);
|
|
75
|
+
if (status.not_added.length)
|
|
76
|
+
lines.push(`Untracked: ${status.not_added.join(', ')}`);
|
|
77
|
+
if (status.created.length)
|
|
78
|
+
lines.push(`Created: ${status.created.join(', ')}`);
|
|
79
|
+
if (status.deleted.length)
|
|
80
|
+
lines.push(`Deleted: ${status.deleted.join(', ')}`);
|
|
81
|
+
if (lines.length === 1 && !status.staged.length && !status.modified.length && lines[0] === `Branch: ${status.current}`) {
|
|
82
|
+
lines.push('Working tree clean');
|
|
83
|
+
}
|
|
84
|
+
return lines.join('\n');
|
|
85
|
+
}
|
|
86
|
+
catch (e) {
|
|
87
|
+
return `ERROR: ${e.message || e}. Make sure the path is a Git repository.`;
|
|
88
|
+
}
|
|
89
|
+
},
|
|
90
|
+
category: 'builtin',
|
|
91
|
+
concurrent: true,
|
|
92
|
+
},
|
|
93
|
+
// ---- git_diff ----
|
|
94
|
+
// 查看 Git 差异
|
|
95
|
+
{
|
|
96
|
+
definition: {
|
|
97
|
+
type: 'function',
|
|
98
|
+
function: {
|
|
99
|
+
name: 'git_diff',
|
|
100
|
+
description: 'Show changes between commits, working tree, and index. Returns unified diff output. ' +
|
|
101
|
+
'Use this to review changes before committing or to understand what was modified.',
|
|
102
|
+
parameters: {
|
|
103
|
+
type: 'object',
|
|
104
|
+
properties: {
|
|
105
|
+
repoPath: { type: 'string', description: 'Path to the Git repository (default: sandbox root)' },
|
|
106
|
+
staged: { type: 'boolean', description: 'If true, show staged changes (default: false, show unstaged)' },
|
|
107
|
+
file: { type: 'string', description: 'Specific file to diff (optional, default: all files)' },
|
|
108
|
+
},
|
|
109
|
+
},
|
|
110
|
+
},
|
|
111
|
+
},
|
|
112
|
+
executor: async (args, ctx) => {
|
|
113
|
+
try {
|
|
114
|
+
const _simpleGit = await Promise.resolve().then(() => __importStar(require("simple-git")));
|
|
115
|
+
const sandbox = ctx.custom?.sandbox;
|
|
116
|
+
const repoPath = args.repoPath || sandbox?.rootDir || process.cwd();
|
|
117
|
+
const git = _simpleGit.default ? _simpleGit.default(repoPath) : _simpleGit(repoPath);
|
|
118
|
+
const staged = args.staged;
|
|
119
|
+
const file = args.file;
|
|
120
|
+
let diff;
|
|
121
|
+
if (staged) {
|
|
122
|
+
diff = await git.diff(['--cached', file].filter(Boolean));
|
|
123
|
+
}
|
|
124
|
+
else {
|
|
125
|
+
diff = file ? await git.diff(['--', file]) : await git.diff();
|
|
126
|
+
}
|
|
127
|
+
return diff || 'No changes found.';
|
|
128
|
+
}
|
|
129
|
+
catch (e) {
|
|
130
|
+
return `ERROR: ${e.message || e}`;
|
|
131
|
+
}
|
|
132
|
+
},
|
|
133
|
+
category: 'builtin',
|
|
134
|
+
concurrent: true,
|
|
135
|
+
},
|
|
136
|
+
// ---- git_commit ----
|
|
137
|
+
// 提交更改
|
|
138
|
+
{
|
|
139
|
+
definition: {
|
|
140
|
+
type: 'function',
|
|
141
|
+
function: {
|
|
142
|
+
name: 'git_commit',
|
|
143
|
+
description: 'Stage files and create a Git commit. Automatically stages all modified files if no specific files provided. ' +
|
|
144
|
+
'The commit message should be descriptive and follow conventional commit format.',
|
|
145
|
+
parameters: {
|
|
146
|
+
type: 'object',
|
|
147
|
+
properties: {
|
|
148
|
+
message: { type: 'string', description: 'Commit message (descriptive, e.g. "feat: add user login page")' },
|
|
149
|
+
repoPath: { type: 'string', description: 'Path to the Git repository (default: sandbox root)' },
|
|
150
|
+
files: { type: 'array', items: { type: 'string' }, description: 'Specific files to stage (optional, default: all modified files)' },
|
|
151
|
+
},
|
|
152
|
+
required: ['message'],
|
|
153
|
+
},
|
|
154
|
+
},
|
|
155
|
+
},
|
|
156
|
+
executor: async (args, ctx) => {
|
|
157
|
+
try {
|
|
158
|
+
const _simpleGit = await Promise.resolve().then(() => __importStar(require("simple-git")));
|
|
159
|
+
const sandbox = ctx.custom?.sandbox;
|
|
160
|
+
const repoPath = args.repoPath || sandbox?.rootDir || process.cwd();
|
|
161
|
+
const git = _simpleGit.default ? _simpleGit.default(repoPath) : _simpleGit(repoPath);
|
|
162
|
+
const files = args.files;
|
|
163
|
+
if (files && files.length > 0) {
|
|
164
|
+
await git.add(files);
|
|
165
|
+
}
|
|
166
|
+
else {
|
|
167
|
+
await git.add('.');
|
|
168
|
+
}
|
|
169
|
+
const commitResult = await git.commit(args.message);
|
|
170
|
+
return `Committed successfully.\n Branch: ${commitResult.branch}\n Summary: ${commitResult.summary.changes} changes, ${commitResult.summary.insertions} insertions, ${commitResult.summary.deletions} deletions\n Commit: ${commitResult.commit}`;
|
|
171
|
+
}
|
|
172
|
+
catch (e) {
|
|
173
|
+
return `ERROR: ${e.message || e}`;
|
|
174
|
+
}
|
|
175
|
+
},
|
|
176
|
+
category: 'builtin',
|
|
177
|
+
concurrent: false,
|
|
178
|
+
},
|
|
179
|
+
// ---- git_log ----
|
|
180
|
+
// 查看提交历史
|
|
181
|
+
{
|
|
182
|
+
definition: {
|
|
183
|
+
type: 'function',
|
|
184
|
+
function: {
|
|
185
|
+
name: 'git_log',
|
|
186
|
+
description: 'Show Git commit history. Returns recent commits with hash, author, date, and message. ' +
|
|
187
|
+
'Use this to understand project history or find when changes were made.',
|
|
188
|
+
parameters: {
|
|
189
|
+
type: 'object',
|
|
190
|
+
properties: {
|
|
191
|
+
repoPath: { type: 'string', description: 'Path to the Git repository (default: sandbox root)' },
|
|
192
|
+
maxCount: { type: 'number', description: 'Maximum number of commits to return (default: 20)' },
|
|
193
|
+
file: { type: 'string', description: 'Show only commits affecting this file (optional)' },
|
|
194
|
+
},
|
|
195
|
+
},
|
|
196
|
+
},
|
|
197
|
+
},
|
|
198
|
+
executor: async (args, ctx) => {
|
|
199
|
+
try {
|
|
200
|
+
const _simpleGit = await Promise.resolve().then(() => __importStar(require("simple-git")));
|
|
201
|
+
const sandbox = ctx.custom?.sandbox;
|
|
202
|
+
const repoPath = args.repoPath || sandbox?.rootDir || process.cwd();
|
|
203
|
+
const git = _simpleGit.default ? _simpleGit.default(repoPath) : _simpleGit(repoPath);
|
|
204
|
+
const maxCount = args.maxCount || 20;
|
|
205
|
+
const file = args.file;
|
|
206
|
+
const options = { maxCount };
|
|
207
|
+
if (file)
|
|
208
|
+
options.file = file;
|
|
209
|
+
const log = await git.log(options);
|
|
210
|
+
if (log.all.length === 0)
|
|
211
|
+
return 'No commits found.';
|
|
212
|
+
const lines = log.all.map((entry, i) => `[${i + 1}] ${entry.hash.slice(0, 8)} ${entry.date}\n ${entry.author_name}: ${entry.message}`);
|
|
213
|
+
return `Found ${log.all.length} commit(s):\n\n${lines.join('\n\n')}`;
|
|
214
|
+
}
|
|
215
|
+
catch (e) {
|
|
216
|
+
return `ERROR: ${e.message || e}`;
|
|
217
|
+
}
|
|
218
|
+
},
|
|
219
|
+
category: 'builtin',
|
|
220
|
+
concurrent: true,
|
|
221
|
+
},
|
|
222
|
+
];
|
|
223
|
+
}
|
|
224
|
+
//# sourceMappingURL=git.js.map
|