sema-core 1.0.13 → 2.0.0
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 +22 -9
- package/dist/{constants → conf}/config.d.ts +0 -1
- package/dist/conf/config.d.ts.map +1 -0
- package/dist/{constants → conf}/config.js +1 -3
- package/dist/conf/config.js.map +1 -0
- package/dist/core/Conversation.d.ts +3 -14
- package/dist/core/Conversation.d.ts.map +1 -1
- package/dist/core/Conversation.js +53 -89
- package/dist/core/Conversation.js.map +1 -1
- package/dist/core/RunTools.d.ts +5 -5
- package/dist/core/RunTools.d.ts.map +1 -1
- package/dist/core/RunTools.js +22 -31
- package/dist/core/RunTools.js.map +1 -1
- package/dist/core/SemaCore.d.ts +21 -22
- package/dist/core/SemaCore.d.ts.map +1 -1
- package/dist/core/SemaCore.js +16 -24
- package/dist/core/SemaCore.js.map +1 -1
- package/dist/core/SemaEngine.d.ts +2 -2
- package/dist/core/SemaEngine.d.ts.map +1 -1
- package/dist/core/SemaEngine.js +30 -33
- package/dist/core/SemaEngine.js.map +1 -1
- package/dist/events/EventSystem.d.ts.map +1 -1
- package/dist/events/EventSystem.js +3 -2
- package/dist/events/EventSystem.js.map +1 -1
- package/dist/events/types.d.ts +75 -41
- package/dist/events/types.d.ts.map +1 -1
- package/dist/manager/ConfManager.d.ts +10 -3
- package/dist/manager/ConfManager.d.ts.map +1 -1
- package/dist/manager/ConfManager.js +30 -13
- package/dist/manager/ConfManager.js.map +1 -1
- package/dist/manager/CronManager.d.ts +3 -6
- package/dist/manager/CronManager.d.ts.map +1 -1
- package/dist/manager/CronManager.js +62 -74
- package/dist/manager/CronManager.js.map +1 -1
- package/dist/manager/ModelManager.d.ts +0 -3
- package/dist/manager/ModelManager.d.ts.map +1 -1
- package/dist/manager/ModelManager.js +2 -4
- package/dist/manager/ModelManager.js.map +1 -1
- package/dist/manager/PermissionManager.d.ts +4 -6
- package/dist/manager/PermissionManager.d.ts.map +1 -1
- package/dist/manager/PermissionManager.js +70 -65
- package/dist/manager/PermissionManager.js.map +1 -1
- package/dist/manager/StateManager.d.ts +40 -7
- package/dist/manager/StateManager.d.ts.map +1 -1
- package/dist/manager/StateManager.js +79 -22
- package/dist/manager/StateManager.js.map +1 -1
- package/dist/manager/TaskManager.d.ts +2 -9
- package/dist/manager/TaskManager.d.ts.map +1 -1
- package/dist/manager/TaskManager.js +64 -66
- package/dist/manager/TaskManager.js.map +1 -1
- package/dist/prompt/agents.d.ts +3 -0
- package/dist/prompt/agents.d.ts.map +1 -0
- package/dist/prompt/agents.js +52 -0
- package/dist/prompt/agents.js.map +1 -0
- package/dist/prompt/commands.d.ts +3 -0
- package/dist/prompt/commands.d.ts.map +1 -0
- package/dist/prompt/commands.js +19 -0
- package/dist/prompt/commands.js.map +1 -0
- package/dist/prompt/compact.d.ts +2 -0
- package/dist/prompt/compact.d.ts.map +1 -0
- package/dist/prompt/compact.js +22 -0
- package/dist/prompt/compact.js.map +1 -0
- package/dist/prompt/define.d.ts +5 -0
- package/dist/prompt/define.d.ts.map +1 -0
- package/dist/prompt/define.js +8 -0
- package/dist/prompt/define.js.map +1 -0
- package/dist/prompt/design/design.d.ts +47 -0
- package/dist/prompt/design/design.d.ts.map +1 -0
- package/dist/prompt/design/design.js +224 -0
- package/dist/prompt/design/design.js.map +1 -0
- package/dist/prompt/design/designPhilosophy.d.ts +2 -0
- package/dist/prompt/design/designPhilosophy.d.ts.map +1 -0
- package/dist/prompt/design/designPhilosophy.js +79 -0
- package/dist/prompt/design/designPhilosophy.js.map +1 -0
- package/dist/prompt/design/designSystemSpec.d.ts +2 -0
- package/dist/prompt/design/designSystemSpec.d.ts.map +1 -0
- package/dist/prompt/design/designSystemSpec.js +44 -0
- package/dist/prompt/design/designSystemSpec.js.map +1 -0
- package/dist/prompt/design/imgPlaceholder.d.ts +2 -0
- package/dist/prompt/design/imgPlaceholder.d.ts.map +1 -0
- package/dist/prompt/design/imgPlaceholder.js +56 -0
- package/dist/prompt/design/imgPlaceholder.js.map +1 -0
- package/dist/prompt/memory.d.ts +2 -0
- package/dist/prompt/memory.d.ts.map +1 -0
- package/dist/prompt/memory.js +23 -0
- package/dist/prompt/memory.js.map +1 -0
- package/dist/prompt/plan.d.ts +2 -0
- package/dist/prompt/plan.d.ts.map +1 -0
- package/dist/prompt/plan.js +30 -0
- package/dist/prompt/plan.js.map +1 -0
- package/dist/prompt/quickchat.d.ts +2 -0
- package/dist/prompt/quickchat.d.ts.map +1 -0
- package/dist/prompt/quickchat.js +16 -0
- package/dist/prompt/quickchat.js.map +1 -0
- package/dist/prompt/system.d.ts +3 -0
- package/dist/prompt/system.d.ts.map +1 -0
- package/dist/prompt/system.js +76 -0
- package/dist/prompt/system.js.map +1 -0
- package/dist/prompt/tool.d.ts +22 -0
- package/dist/prompt/tool.d.ts.map +1 -0
- package/dist/prompt/tool.js +25 -0
- package/dist/prompt/tool.js.map +1 -0
- package/dist/prompt/toolAliases.d.ts +16 -0
- package/dist/prompt/toolAliases.d.ts.map +1 -0
- package/dist/prompt/toolAliases.js +46 -0
- package/dist/prompt/toolAliases.js.map +1 -0
- package/dist/prompt/tools/createCron.d.ts +2 -0
- package/dist/prompt/tools/createCron.d.ts.map +1 -0
- package/dist/prompt/tools/createCron.js +29 -0
- package/dist/prompt/tools/createCron.js.map +1 -0
- package/dist/prompt/tools/createTodo.d.ts +2 -0
- package/dist/prompt/tools/createTodo.d.ts.map +1 -0
- package/dist/prompt/tools/createTodo.js +23 -0
- package/dist/prompt/tools/createTodo.js.map +1 -0
- package/dist/prompt/tools/fetchUrl.d.ts +3 -0
- package/dist/prompt/tools/fetchUrl.d.ts.map +1 -0
- package/dist/prompt/tools/fetchUrl.js +27 -0
- package/dist/prompt/tools/fetchUrl.js.map +1 -0
- package/dist/prompt/tools/planToAgent.d.ts +2 -0
- package/dist/prompt/tools/planToAgent.d.ts.map +1 -0
- package/dist/prompt/tools/planToAgent.js +24 -0
- package/dist/prompt/tools/planToAgent.js.map +1 -0
- package/dist/prompt/tools/runShell.d.ts +2 -0
- package/dist/prompt/tools/runShell.d.ts.map +1 -0
- package/dist/prompt/tools/runShell.js +31 -0
- package/dist/prompt/tools/runShell.js.map +1 -0
- package/dist/prompt/tools/searchContent.d.ts +2 -0
- package/dist/prompt/tools/searchContent.d.ts.map +1 -0
- package/dist/prompt/tools/searchContent.js +18 -0
- package/dist/prompt/tools/searchContent.js.map +1 -0
- package/dist/prompt/tools/skill.d.ts +2 -0
- package/dist/prompt/tools/skill.d.ts.map +1 -0
- package/dist/prompt/tools/skill.js +14 -0
- package/dist/prompt/tools/skill.js.map +1 -0
- package/dist/prompt/tools/subAgent.d.ts +2 -0
- package/dist/prompt/tools/subAgent.d.ts.map +1 -0
- package/dist/prompt/tools/subAgent.js +45 -0
- package/dist/prompt/tools/subAgent.js.map +1 -0
- package/dist/prompt/tools/viewFile.d.ts +4 -0
- package/dist/prompt/tools/viewFile.d.ts.map +1 -0
- package/dist/prompt/tools/viewFile.js +26 -0
- package/dist/prompt/tools/viewFile.js.map +1 -0
- package/dist/services/agents/agentsManager.d.ts +12 -15
- package/dist/services/agents/agentsManager.d.ts.map +1 -1
- package/dist/services/agents/agentsManager.js +67 -65
- package/dist/services/agents/agentsManager.js.map +1 -1
- package/dist/services/agents/genDesignSystemReminder.d.ts +3 -0
- package/dist/services/agents/genDesignSystemReminder.d.ts.map +1 -0
- package/dist/services/agents/genDesignSystemReminder.js +149 -0
- package/dist/services/agents/genDesignSystemReminder.js.map +1 -0
- package/dist/services/agents/genSystemPrompt.d.ts +11 -11
- package/dist/services/agents/genSystemPrompt.d.ts.map +1 -1
- package/dist/services/agents/genSystemPrompt.js +58 -121
- package/dist/services/agents/genSystemPrompt.js.map +1 -1
- package/dist/services/agents/{systemReminder.d.ts → genSystemReminder.d.ts} +2 -7
- package/dist/services/agents/genSystemReminder.d.ts.map +1 -0
- package/dist/services/agents/genSystemReminder.js +86 -0
- package/dist/services/agents/genSystemReminder.js.map +1 -0
- package/dist/services/api/adapt/anthropic.d.ts +3 -5
- package/dist/services/api/adapt/anthropic.d.ts.map +1 -1
- package/dist/services/api/adapt/anthropic.js +32 -18
- package/dist/services/api/adapt/anthropic.js.map +1 -1
- package/dist/services/api/adapt/openai.d.ts +3 -3
- package/dist/services/api/adapt/openai.d.ts.map +1 -1
- package/dist/services/api/adapt/openai.js +20 -23
- package/dist/services/api/adapt/openai.js.map +1 -1
- package/dist/services/api/adapt/util.d.ts +0 -1
- package/dist/services/api/adapt/util.d.ts.map +1 -1
- package/dist/services/api/adapt/util.js +3 -5
- package/dist/services/api/adapt/util.js.map +1 -1
- package/dist/services/api/apiUtil.d.ts +3 -0
- package/dist/services/api/apiUtil.d.ts.map +1 -1
- package/dist/services/api/apiUtil.js +32 -28
- package/dist/services/api/apiUtil.js.map +1 -1
- package/dist/services/api/cache.d.ts +5 -5
- package/dist/services/api/cache.d.ts.map +1 -1
- package/dist/services/api/cache.js +16 -20
- package/dist/services/api/cache.js.map +1 -1
- package/dist/services/api/queryLLM.d.ts +4 -5
- package/dist/services/api/queryLLM.d.ts.map +1 -1
- package/dist/services/api/queryLLM.js +2 -6
- package/dist/services/api/queryLLM.js.map +1 -1
- package/dist/services/commands/commandsManager.d.ts +11 -14
- package/dist/services/commands/commandsManager.d.ts.map +1 -1
- package/dist/services/commands/commandsManager.js +54 -64
- package/dist/services/commands/commandsManager.js.map +1 -1
- package/dist/services/commands/runCommand.d.ts.map +1 -1
- package/dist/services/commands/runCommand.js +3 -27
- package/dist/services/commands/runCommand.js.map +1 -1
- package/dist/services/design/designManager.d.ts +29 -0
- package/dist/services/design/designManager.d.ts.map +1 -0
- package/dist/services/design/designManager.js +365 -0
- package/dist/services/design/designManager.js.map +1 -0
- package/dist/services/mcp/MCPClient.d.ts.map +1 -1
- package/dist/services/mcp/MCPClient.js +9 -1
- package/dist/services/mcp/MCPClient.js.map +1 -1
- package/dist/services/mcp/MCPManager.d.ts +9 -29
- package/dist/services/mcp/MCPManager.d.ts.map +1 -1
- package/dist/services/mcp/MCPManager.js +53 -147
- package/dist/services/mcp/MCPManager.js.map +1 -1
- package/dist/services/mcp/MCPToolAdapter.js +4 -4
- package/dist/services/mcp/MCPToolAdapter.js.map +1 -1
- package/dist/services/memory/memManager.d.ts +6 -9
- package/dist/services/memory/memManager.d.ts.map +1 -1
- package/dist/services/memory/memManager.js +22 -42
- package/dist/services/memory/memManager.js.map +1 -1
- package/dist/services/plugins/pluginsManager.d.ts +9 -17
- package/dist/services/plugins/pluginsManager.d.ts.map +1 -1
- package/dist/services/plugins/pluginsManager.js +33 -104
- package/dist/services/plugins/pluginsManager.js.map +1 -1
- package/dist/services/rules/rulesManager.d.ts +7 -9
- package/dist/services/rules/rulesManager.d.ts.map +1 -1
- package/dist/services/rules/rulesManager.js +19 -39
- package/dist/services/rules/rulesManager.js.map +1 -1
- package/dist/services/skills/skillsManager.d.ts +10 -13
- package/dist/services/skills/skillsManager.d.ts.map +1 -1
- package/dist/services/skills/skillsManager.js +41 -54
- package/dist/services/skills/skillsManager.js.map +1 -1
- package/dist/tools/CreateCron.d.ts +68 -0
- package/dist/tools/CreateCron.d.ts.map +1 -0
- package/dist/tools/CreateCron.js +76 -0
- package/dist/tools/CreateCron.js.map +1 -0
- package/dist/tools/CreateTodo.d.ts +48 -0
- package/dist/tools/CreateTodo.d.ts.map +1 -0
- package/dist/tools/CreateTodo.js +50 -0
- package/dist/tools/CreateTodo.js.map +1 -0
- package/dist/tools/{CronDelete/CronDelete.d.ts → DelCron.d.ts} +11 -11
- package/dist/tools/DelCron.d.ts.map +1 -0
- package/dist/tools/{CronDelete/CronDelete.js → DelCron.js} +12 -12
- package/dist/tools/DelCron.js.map +1 -0
- package/dist/tools/{NotebookEdit/NotebookEdit.d.ts → EditNotebook.d.ts} +37 -37
- package/dist/tools/EditNotebook.d.ts.map +1 -0
- package/dist/tools/EditNotebook.js +220 -0
- package/dist/tools/EditNotebook.js.map +1 -0
- package/dist/tools/{WebFetch/WebFetch.d.ts → FetchUrl.d.ts} +8 -8
- package/dist/tools/FetchUrl.d.ts.map +1 -0
- package/dist/tools/{WebFetch/WebFetch.js → FetchUrl.js} +30 -34
- package/dist/tools/FetchUrl.js.map +1 -0
- package/dist/tools/GetTodo.d.ts +34 -0
- package/dist/tools/GetTodo.d.ts.map +1 -0
- package/dist/tools/{TaskGet/TaskGet.js → GetTodo.js} +21 -20
- package/dist/tools/GetTodo.js.map +1 -0
- package/dist/tools/{CronList/CronList.d.ts → ListCrons.d.ts} +12 -13
- package/dist/tools/ListCrons.d.ts.map +1 -0
- package/dist/tools/{CronList/CronList.js → ListCrons.js} +20 -20
- package/dist/tools/ListCrons.js.map +1 -0
- package/dist/tools/ListTodos.d.ts +27 -0
- package/dist/tools/ListTodos.d.ts.map +1 -0
- package/dist/tools/{TaskList/TaskList.js → ListTodos.js} +20 -19
- package/dist/tools/ListTodos.js.map +1 -0
- package/dist/tools/{Edit/Edit.d.ts → PatchFile.d.ts} +39 -43
- package/dist/tools/PatchFile.d.ts.map +1 -0
- package/dist/tools/PatchFile.js +214 -0
- package/dist/tools/PatchFile.js.map +1 -0
- package/dist/tools/PeekBgJob.d.ts +58 -0
- package/dist/tools/PeekBgJob.d.ts.map +1 -0
- package/dist/tools/PeekBgJob.js +92 -0
- package/dist/tools/PeekBgJob.js.map +1 -0
- package/dist/tools/PickOption.d.ts +463 -0
- package/dist/tools/PickOption.d.ts.map +1 -0
- package/dist/tools/PickOption.js +226 -0
- package/dist/tools/PickOption.js.map +1 -0
- package/dist/tools/PlanToAgent.d.ts +42 -0
- package/dist/tools/PlanToAgent.d.ts.map +1 -0
- package/dist/tools/{ExitPlanMode/ExitPlanMode.js → PlanToAgent.js} +47 -43
- package/dist/tools/PlanToAgent.js.map +1 -0
- package/dist/tools/{Bash/Bash.d.ts → RunShell.d.ts} +23 -21
- package/dist/tools/RunShell.d.ts.map +1 -0
- package/dist/tools/{Bash/Bash.js → RunShell.js} +55 -58
- package/dist/tools/RunShell.js.map +1 -0
- package/dist/tools/SearchContent.d.ts +86 -0
- package/dist/tools/SearchContent.d.ts.map +1 -0
- package/dist/tools/SearchContent.js +237 -0
- package/dist/tools/SearchContent.js.map +1 -0
- package/dist/tools/{Glob/Glob.d.ts → SearchFiles.d.ts} +8 -8
- package/dist/tools/SearchFiles.d.ts.map +1 -0
- package/dist/tools/{Glob/Glob.js → SearchFiles.js} +24 -31
- package/dist/tools/SearchFiles.js.map +1 -0
- package/dist/tools/{Skill/Skill.d.ts → Skill.d.ts} +11 -11
- package/dist/tools/Skill.d.ts.map +1 -0
- package/dist/tools/{Skill/Skill.js → Skill.js} +21 -19
- package/dist/tools/Skill.js.map +1 -0
- package/dist/tools/{TaskStop/TaskStop.d.ts → StopBgJob.d.ts} +17 -17
- package/dist/tools/StopBgJob.d.ts.map +1 -0
- package/dist/tools/StopBgJob.js +69 -0
- package/dist/tools/StopBgJob.js.map +1 -0
- package/dist/tools/SubAgent.d.ts +67 -0
- package/dist/tools/SubAgent.d.ts.map +1 -0
- package/dist/tools/{Agent/Agent.js → SubAgent.js} +60 -58
- package/dist/tools/SubAgent.js.map +1 -0
- package/dist/tools/UpdateTodo.d.ts +76 -0
- package/dist/tools/UpdateTodo.d.ts.map +1 -0
- package/dist/tools/UpdateTodo.js +111 -0
- package/dist/tools/UpdateTodo.js.map +1 -0
- package/dist/tools/{Read/Read.d.ts → ViewFile.d.ts} +26 -64
- package/dist/tools/ViewFile.d.ts.map +1 -0
- package/dist/tools/ViewFile.js +365 -0
- package/dist/tools/ViewFile.js.map +1 -0
- package/dist/tools/{Write/Write.d.ts → WriteFile.d.ts} +12 -12
- package/dist/tools/WriteFile.d.ts.map +1 -0
- package/dist/tools/WriteFile.js +150 -0
- package/dist/tools/WriteFile.js.map +1 -0
- package/dist/tools/base/Tool.d.ts +2 -2
- package/dist/tools/base/Tool.d.ts.map +1 -1
- package/dist/tools/base/tools.d.ts +1 -0
- package/dist/tools/base/tools.d.ts.map +1 -1
- package/dist/tools/base/tools.js +56 -50
- package/dist/tools/base/tools.js.map +1 -1
- package/dist/types/agent.d.ts +0 -1
- package/dist/types/agent.d.ts.map +1 -1
- package/dist/types/command.d.ts +0 -2
- package/dist/types/command.d.ts.map +1 -1
- package/dist/types/cron.d.ts +6 -6
- package/dist/types/cron.d.ts.map +1 -1
- package/dist/types/design.d.ts +24 -0
- package/dist/types/design.d.ts.map +1 -0
- package/dist/types/design.js +6 -0
- package/dist/types/design.js.map +1 -0
- package/dist/types/errors.d.ts +0 -2
- package/dist/types/errors.d.ts.map +1 -1
- package/dist/types/errors.js +0 -2
- package/dist/types/errors.js.map +1 -1
- package/dist/types/index.d.ts +16 -12
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +28 -5
- package/dist/types/index.js.map +1 -1
- package/dist/types/mcp.d.ts +1 -3
- package/dist/types/mcp.d.ts.map +1 -1
- package/dist/types/message.d.ts +5 -4
- package/dist/types/message.d.ts.map +1 -1
- package/dist/types/model.d.ts +1 -1
- package/dist/types/model.d.ts.map +1 -1
- package/dist/types/plugin.d.ts +8 -11
- package/dist/types/plugin.d.ts.map +1 -1
- package/dist/types/skill.d.ts +0 -3
- package/dist/types/skill.d.ts.map +1 -1
- package/dist/types/skill.js +0 -2
- package/dist/types/skill.js.map +1 -1
- package/dist/types/task.d.ts +10 -10
- package/dist/types/task.d.ts.map +1 -1
- package/dist/types/todoTask.d.ts +4 -5
- package/dist/types/todoTask.d.ts.map +1 -1
- package/dist/util/adapter.d.ts +8 -3
- package/dist/util/adapter.d.ts.map +1 -1
- package/dist/util/adapter.js +22 -49
- package/dist/util/adapter.js.map +1 -1
- package/dist/util/agentStats.d.ts +1 -1
- package/dist/util/agentStats.d.ts.map +1 -1
- package/dist/util/agentStats.js +16 -24
- package/dist/util/agentStats.js.map +1 -1
- package/dist/util/cacheLLM.d.ts +5 -5
- package/dist/util/cacheLLM.d.ts.map +1 -1
- package/dist/util/cacheLLM.js.map +1 -1
- package/dist/util/color.d.ts +44 -0
- package/dist/util/color.d.ts.map +1 -0
- package/dist/util/color.js +247 -0
- package/dist/util/color.js.map +1 -0
- package/dist/util/commands.d.ts +4 -5
- package/dist/util/commands.d.ts.map +1 -1
- package/dist/util/commands.js +22 -112
- package/dist/util/commands.js.map +1 -1
- package/dist/util/compact.d.ts +6 -3
- package/dist/util/compact.d.ts.map +1 -1
- package/dist/util/compact.js +20 -149
- package/dist/util/compact.js.map +1 -1
- package/dist/util/cron.d.ts +1 -9
- package/dist/util/cron.d.ts.map +1 -1
- package/dist/util/cron.js +2 -29
- package/dist/util/cron.js.map +1 -1
- package/dist/util/cwd.d.ts +2 -35
- package/dist/util/cwd.d.ts.map +1 -1
- package/dist/util/cwd.js +7 -57
- package/dist/util/cwd.js.map +1 -1
- package/dist/util/diff.d.ts +6 -4
- package/dist/util/diff.d.ts.map +1 -1
- package/dist/util/diff.js +63 -104
- package/dist/util/diff.js.map +1 -1
- package/dist/{tools/Edit/utils.d.ts → util/edit.d.ts} +2 -5
- package/dist/util/edit.d.ts.map +1 -0
- package/dist/util/edit.js +44 -0
- package/dist/util/edit.js.map +1 -0
- package/dist/util/env.d.ts +1 -4
- package/dist/util/env.d.ts.map +1 -1
- package/dist/util/env.js +22 -15
- package/dist/util/env.js.map +1 -1
- package/dist/util/fetchUrl.d.ts +18 -0
- package/dist/util/fetchUrl.d.ts.map +1 -0
- package/dist/util/fetchUrl.js +101 -0
- package/dist/util/fetchUrl.js.map +1 -0
- package/dist/util/file.d.ts +32 -45
- package/dist/util/file.d.ts.map +1 -1
- package/dist/util/file.js +153 -236
- package/dist/util/file.js.map +1 -1
- package/dist/util/fileReference.d.ts +1 -9
- package/dist/util/fileReference.d.ts.map +1 -1
- package/dist/util/fileReference.js +45 -58
- package/dist/util/fileReference.js.map +1 -1
- package/dist/util/format.d.ts +1 -9
- package/dist/util/format.d.ts.map +1 -1
- package/dist/util/format.js +5 -46
- package/dist/util/format.js.map +1 -1
- package/dist/util/formatter.d.ts +5 -8
- package/dist/util/formatter.d.ts.map +1 -1
- package/dist/util/formatter.js +5 -15
- package/dist/util/formatter.js.map +1 -1
- package/dist/util/git.d.ts +2 -3
- package/dist/util/git.d.ts.map +1 -1
- package/dist/util/git.js +34 -39
- package/dist/util/git.js.map +1 -1
- package/dist/util/history.d.ts +0 -7
- package/dist/util/history.d.ts.map +1 -1
- package/dist/util/history.js +3 -50
- package/dist/util/history.js.map +1 -1
- package/dist/util/log.d.ts +0 -1
- package/dist/util/log.d.ts.map +1 -1
- package/dist/util/log.js +2 -7
- package/dist/util/log.js.map +1 -1
- package/dist/util/logLLM.d.ts +0 -4
- package/dist/util/logLLM.d.ts.map +1 -1
- package/dist/util/logLLM.js +6 -16
- package/dist/util/logLLM.js.map +1 -1
- package/dist/util/message.d.ts +12 -11
- package/dist/util/message.d.ts.map +1 -1
- package/dist/util/message.js +68 -89
- package/dist/util/message.js.map +1 -1
- package/dist/util/model.d.ts +0 -3
- package/dist/util/model.d.ts.map +1 -1
- package/dist/util/model.js +1 -5
- package/dist/util/model.js.map +1 -1
- package/dist/util/notebook.d.ts +1 -8
- package/dist/util/notebook.d.ts.map +1 -1
- package/dist/util/notebook.js +36 -63
- package/dist/util/notebook.js.map +1 -1
- package/dist/util/pdf.d.ts +14 -72
- package/dist/util/pdf.d.ts.map +1 -1
- package/dist/util/pdf.js +51 -460
- package/dist/util/pdf.js.map +1 -1
- package/dist/util/process.d.ts +1 -1
- package/dist/util/process.d.ts.map +1 -1
- package/dist/util/process.js +7 -11
- package/dist/util/process.js.map +1 -1
- package/dist/util/quickchat.d.ts +6 -0
- package/dist/util/quickchat.d.ts.map +1 -0
- package/dist/util/{btw.js → quickchat.js} +14 -32
- package/dist/util/quickchat.js.map +1 -0
- package/dist/util/ripgrep.d.ts +4 -2
- package/dist/util/ripgrep.d.ts.map +1 -1
- package/dist/util/ripgrep.js +40 -116
- package/dist/util/ripgrep.js.map +1 -1
- package/dist/util/savePath.d.ts +2 -18
- package/dist/util/savePath.d.ts.map +1 -1
- package/dist/util/savePath.js +7 -47
- package/dist/util/savePath.js.map +1 -1
- package/dist/util/secureFile.d.ts +13 -135
- package/dist/util/secureFile.d.ts.map +1 -1
- package/dist/util/secureFile.js +74 -478
- package/dist/util/secureFile.js.map +1 -1
- package/dist/util/session.d.ts +0 -21
- package/dist/util/session.d.ts.map +1 -1
- package/dist/util/session.js +0 -49
- package/dist/util/session.js.map +1 -1
- package/dist/util/shell.d.ts +23 -3
- package/dist/util/shell.d.ts.map +1 -1
- package/dist/util/shell.js +199 -290
- package/dist/util/shell.js.map +1 -1
- package/dist/util/time.d.ts +6 -5
- package/dist/util/time.d.ts.map +1 -1
- package/dist/util/time.js +10 -6
- package/dist/util/time.js.map +1 -1
- package/dist/util/tokens.d.ts +0 -1
- package/dist/util/tokens.d.ts.map +1 -1
- package/dist/util/tokens.js +12 -23
- package/dist/util/tokens.js.map +1 -1
- package/dist/util/topic.d.ts +1 -4
- package/dist/util/topic.d.ts.map +1 -1
- package/dist/util/topic.js +12 -11
- package/dist/util/topic.js.map +1 -1
- package/dist/util/writeFile.d.ts +12 -0
- package/dist/util/writeFile.d.ts.map +1 -0
- package/dist/util/writeFile.js +69 -0
- package/dist/util/writeFile.js.map +1 -0
- package/package.json +1 -1
- package/dist/constants/config.d.ts.map +0 -1
- package/dist/constants/config.js.map +0 -1
- package/dist/constants/message.d.ts +0 -10
- package/dist/constants/message.d.ts.map +0 -1
- package/dist/constants/message.js +0 -25
- package/dist/constants/message.js.map +0 -1
- package/dist/constants/product.d.ts +0 -4
- package/dist/constants/product.d.ts.map +0 -1
- package/dist/constants/product.js +0 -7
- package/dist/constants/product.js.map +0 -1
- package/dist/services/agents/defaultBuiltInAgentsConfs.d.ts +0 -3
- package/dist/services/agents/defaultBuiltInAgentsConfs.d.ts.map +0 -1
- package/dist/services/agents/defaultBuiltInAgentsConfs.js +0 -125
- package/dist/services/agents/defaultBuiltInAgentsConfs.js.map +0 -1
- package/dist/services/agents/prompt.d.ts +0 -10
- package/dist/services/agents/prompt.d.ts.map +0 -1
- package/dist/services/agents/prompt.js +0 -144
- package/dist/services/agents/prompt.js.map +0 -1
- package/dist/services/agents/systemReminder.d.ts.map +0 -1
- package/dist/services/agents/systemReminder.js +0 -68
- package/dist/services/agents/systemReminder.js.map +0 -1
- package/dist/tools/Agent/Agent.d.ts +0 -67
- package/dist/tools/Agent/Agent.d.ts.map +0 -1
- package/dist/tools/Agent/Agent.js.map +0 -1
- package/dist/tools/Agent/prompt.d.ts +0 -6
- package/dist/tools/Agent/prompt.d.ts.map +0 -1
- package/dist/tools/Agent/prompt.js +0 -73
- package/dist/tools/Agent/prompt.js.map +0 -1
- package/dist/tools/AskUserQuestion/AskUserQuestion.d.ts +0 -179
- package/dist/tools/AskUserQuestion/AskUserQuestion.d.ts.map +0 -1
- package/dist/tools/AskUserQuestion/AskUserQuestion.js +0 -165
- package/dist/tools/AskUserQuestion/AskUserQuestion.js.map +0 -1
- package/dist/tools/AskUserQuestion/prompt.d.ts +0 -3
- package/dist/tools/AskUserQuestion/prompt.d.ts.map +0 -1
- package/dist/tools/AskUserQuestion/prompt.js +0 -17
- package/dist/tools/AskUserQuestion/prompt.js.map +0 -1
- package/dist/tools/Bash/Bash.d.ts.map +0 -1
- package/dist/tools/Bash/Bash.js.map +0 -1
- package/dist/tools/Bash/prompt.d.ts +0 -5
- package/dist/tools/Bash/prompt.d.ts.map +0 -1
- package/dist/tools/Bash/prompt.js +0 -130
- package/dist/tools/Bash/prompt.js.map +0 -1
- package/dist/tools/Bash/utils.d.ts +0 -9
- package/dist/tools/Bash/utils.d.ts.map +0 -1
- package/dist/tools/Bash/utils.js +0 -41
- package/dist/tools/Bash/utils.js.map +0 -1
- package/dist/tools/CronCreate/CronCreate.d.ts +0 -68
- package/dist/tools/CronCreate/CronCreate.d.ts.map +0 -1
- package/dist/tools/CronCreate/CronCreate.js +0 -75
- package/dist/tools/CronCreate/CronCreate.js.map +0 -1
- package/dist/tools/CronCreate/prompt.d.ts +0 -3
- package/dist/tools/CronCreate/prompt.d.ts.map +0 -1
- package/dist/tools/CronCreate/prompt.js +0 -41
- package/dist/tools/CronCreate/prompt.js.map +0 -1
- package/dist/tools/CronDelete/CronDelete.d.ts.map +0 -1
- package/dist/tools/CronDelete/CronDelete.js.map +0 -1
- package/dist/tools/CronDelete/prompt.d.ts +0 -3
- package/dist/tools/CronDelete/prompt.d.ts.map +0 -1
- package/dist/tools/CronDelete/prompt.js +0 -6
- package/dist/tools/CronDelete/prompt.js.map +0 -1
- package/dist/tools/CronList/CronList.d.ts.map +0 -1
- package/dist/tools/CronList/CronList.js.map +0 -1
- package/dist/tools/CronList/prompt.d.ts +0 -3
- package/dist/tools/CronList/prompt.d.ts.map +0 -1
- package/dist/tools/CronList/prompt.js +0 -6
- package/dist/tools/CronList/prompt.js.map +0 -1
- package/dist/tools/Edit/Edit.d.ts.map +0 -1
- package/dist/tools/Edit/Edit.js +0 -225
- package/dist/tools/Edit/Edit.js.map +0 -1
- package/dist/tools/Edit/prompt.d.ts +0 -3
- package/dist/tools/Edit/prompt.d.ts.map +0 -1
- package/dist/tools/Edit/prompt.js +0 -15
- package/dist/tools/Edit/prompt.js.map +0 -1
- package/dist/tools/Edit/utils.d.ts.map +0 -1
- package/dist/tools/Edit/utils.js +0 -60
- package/dist/tools/Edit/utils.js.map +0 -1
- package/dist/tools/ExitPlanMode/ExitPlanMode.d.ts +0 -42
- package/dist/tools/ExitPlanMode/ExitPlanMode.d.ts.map +0 -1
- package/dist/tools/ExitPlanMode/ExitPlanMode.js.map +0 -1
- package/dist/tools/ExitPlanMode/prompt.d.ts +0 -3
- package/dist/tools/ExitPlanMode/prompt.d.ts.map +0 -1
- package/dist/tools/ExitPlanMode/prompt.js +0 -28
- package/dist/tools/ExitPlanMode/prompt.js.map +0 -1
- package/dist/tools/Glob/Glob.d.ts.map +0 -1
- package/dist/tools/Glob/Glob.js.map +0 -1
- package/dist/tools/Glob/prompt.d.ts +0 -3
- package/dist/tools/Glob/prompt.d.ts.map +0 -1
- package/dist/tools/Glob/prompt.js +0 -11
- package/dist/tools/Glob/prompt.js.map +0 -1
- package/dist/tools/Grep/Grep.d.ts +0 -106
- package/dist/tools/Grep/Grep.d.ts.map +0 -1
- package/dist/tools/Grep/Grep.js +0 -301
- package/dist/tools/Grep/Grep.js.map +0 -1
- package/dist/tools/Grep/prompt.d.ts +0 -3
- package/dist/tools/Grep/prompt.d.ts.map +0 -1
- package/dist/tools/Grep/prompt.js +0 -17
- package/dist/tools/Grep/prompt.js.map +0 -1
- package/dist/tools/NotebookEdit/NotebookEdit.d.ts.map +0 -1
- package/dist/tools/NotebookEdit/NotebookEdit.js +0 -312
- package/dist/tools/NotebookEdit/NotebookEdit.js.map +0 -1
- package/dist/tools/NotebookEdit/prompt.d.ts +0 -3
- package/dist/tools/NotebookEdit/prompt.d.ts.map +0 -1
- package/dist/tools/NotebookEdit/prompt.js +0 -6
- package/dist/tools/NotebookEdit/prompt.js.map +0 -1
- package/dist/tools/Read/Read.d.ts.map +0 -1
- package/dist/tools/Read/Read.js +0 -472
- package/dist/tools/Read/Read.js.map +0 -1
- package/dist/tools/Read/prompt.d.ts +0 -4
- package/dist/tools/Read/prompt.d.ts.map +0 -1
- package/dist/tools/Read/prompt.js +0 -23
- package/dist/tools/Read/prompt.js.map +0 -1
- package/dist/tools/Skill/Skill.d.ts.map +0 -1
- package/dist/tools/Skill/Skill.js.map +0 -1
- package/dist/tools/Skill/prompt.d.ts +0 -3
- package/dist/tools/Skill/prompt.d.ts.map +0 -1
- package/dist/tools/Skill/prompt.js +0 -27
- package/dist/tools/Skill/prompt.js.map +0 -1
- package/dist/tools/TaskCreate/TaskCreate.d.ts +0 -54
- package/dist/tools/TaskCreate/TaskCreate.d.ts.map +0 -1
- package/dist/tools/TaskCreate/TaskCreate.js +0 -51
- package/dist/tools/TaskCreate/TaskCreate.js.map +0 -1
- package/dist/tools/TaskCreate/prompt.d.ts +0 -3
- package/dist/tools/TaskCreate/prompt.d.ts.map +0 -1
- package/dist/tools/TaskCreate/prompt.js +0 -45
- package/dist/tools/TaskCreate/prompt.js.map +0 -1
- package/dist/tools/TaskGet/TaskGet.d.ts +0 -34
- package/dist/tools/TaskGet/TaskGet.d.ts.map +0 -1
- package/dist/tools/TaskGet/TaskGet.js.map +0 -1
- package/dist/tools/TaskGet/prompt.d.ts +0 -3
- package/dist/tools/TaskGet/prompt.d.ts.map +0 -1
- package/dist/tools/TaskGet/prompt.js +0 -26
- package/dist/tools/TaskGet/prompt.js.map +0 -1
- package/dist/tools/TaskList/TaskList.d.ts +0 -27
- package/dist/tools/TaskList/TaskList.d.ts.map +0 -1
- package/dist/tools/TaskList/TaskList.js.map +0 -1
- package/dist/tools/TaskList/prompt.d.ts +0 -3
- package/dist/tools/TaskList/prompt.d.ts.map +0 -1
- package/dist/tools/TaskList/prompt.js +0 -25
- package/dist/tools/TaskList/prompt.js.map +0 -1
- package/dist/tools/TaskOutput/TaskOutput.d.ts +0 -58
- package/dist/tools/TaskOutput/TaskOutput.d.ts.map +0 -1
- package/dist/tools/TaskOutput/TaskOutput.js +0 -95
- package/dist/tools/TaskOutput/TaskOutput.js.map +0 -1
- package/dist/tools/TaskStop/TaskStop.d.ts.map +0 -1
- package/dist/tools/TaskStop/TaskStop.js +0 -69
- package/dist/tools/TaskStop/TaskStop.js.map +0 -1
- package/dist/tools/TaskUpdate/TaskUpdate.d.ts +0 -88
- package/dist/tools/TaskUpdate/TaskUpdate.d.ts.map +0 -1
- package/dist/tools/TaskUpdate/TaskUpdate.js +0 -115
- package/dist/tools/TaskUpdate/TaskUpdate.js.map +0 -1
- package/dist/tools/TaskUpdate/prompt.d.ts +0 -3
- package/dist/tools/TaskUpdate/prompt.d.ts.map +0 -1
- package/dist/tools/TaskUpdate/prompt.js +0 -80
- package/dist/tools/TaskUpdate/prompt.js.map +0 -1
- package/dist/tools/TodoWrite/TodoWrite.d.ts +0 -92
- package/dist/tools/TodoWrite/TodoWrite.d.ts.map +0 -1
- package/dist/tools/TodoWrite/TodoWrite.js +0 -101
- package/dist/tools/TodoWrite/TodoWrite.js.map +0 -1
- package/dist/tools/TodoWrite/prompt.d.ts +0 -3
- package/dist/tools/TodoWrite/prompt.d.ts.map +0 -1
- package/dist/tools/TodoWrite/prompt.js +0 -187
- package/dist/tools/TodoWrite/prompt.js.map +0 -1
- package/dist/tools/WebFetch/WebFetch.d.ts.map +0 -1
- package/dist/tools/WebFetch/WebFetch.js.map +0 -1
- package/dist/tools/WebFetch/prompt.d.ts +0 -4
- package/dist/tools/WebFetch/prompt.d.ts.map +0 -1
- package/dist/tools/WebFetch/prompt.js +0 -38
- package/dist/tools/WebFetch/prompt.js.map +0 -1
- package/dist/tools/WebFetch/utils.d.ts +0 -20
- package/dist/tools/WebFetch/utils.d.ts.map +0 -1
- package/dist/tools/WebFetch/utils.js +0 -223
- package/dist/tools/WebFetch/utils.js.map +0 -1
- package/dist/tools/Write/Write.d.ts.map +0 -1
- package/dist/tools/Write/Write.js +0 -197
- package/dist/tools/Write/Write.js.map +0 -1
- package/dist/tools/Write/prompt.d.ts +0 -3
- package/dist/tools/Write/prompt.d.ts.map +0 -1
- package/dist/tools/Write/prompt.js +0 -13
- package/dist/tools/Write/prompt.js.map +0 -1
- package/dist/util/assembleTools.d.ts +0 -6
- package/dist/util/assembleTools.d.ts.map +0 -1
- package/dist/util/assembleTools.js +0 -17
- package/dist/util/assembleTools.js.map +0 -1
- package/dist/util/btw.d.ts +0 -6
- package/dist/util/btw.d.ts.map +0 -1
- package/dist/util/btw.js.map +0 -1
- package/dist/util/directory.d.ts +0 -37
- package/dist/util/directory.d.ts.map +0 -1
- package/dist/util/directory.js +0 -137
- package/dist/util/directory.js.map +0 -1
- package/dist/util/exec.d.ts +0 -6
- package/dist/util/exec.d.ts.map +0 -1
- package/dist/util/exec.js +0 -43
- package/dist/util/exec.js.map +0 -1
- package/dist/util/filePermission.d.ts +0 -14
- package/dist/util/filePermission.d.ts.map +0 -1
- package/dist/util/filePermission.js +0 -47
- package/dist/util/filePermission.js.map +0 -1
package/dist/util/diff.js
CHANGED
|
@@ -6,121 +6,80 @@ exports.getDiffContent = getDiffContent;
|
|
|
6
6
|
const diff_1 = require("diff");
|
|
7
7
|
const path_1 = require("path");
|
|
8
8
|
const cwd_1 = require("./cwd");
|
|
9
|
-
const
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
function
|
|
15
|
-
return (
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
9
|
+
const PATCH_SURROUNDING_LINES = 3;
|
|
10
|
+
const SPECIAL_CHAR_MARKERS = {
|
|
11
|
+
'&': '<<:AMPERSAND:>>',
|
|
12
|
+
'$': '<<:DOLLAR:>>',
|
|
13
|
+
};
|
|
14
|
+
function escapeSpecialChars(str) {
|
|
15
|
+
return Object.entries(SPECIAL_CHAR_MARKERS).reduce((s, [char, marker]) => s.replaceAll(char, marker), str);
|
|
16
|
+
}
|
|
17
|
+
function unescapeSpecialChars(str) {
|
|
18
|
+
return Object.entries(SPECIAL_CHAR_MARKERS).reduce((s, [char, marker]) => s.replaceAll(marker, char), str);
|
|
19
|
+
}
|
|
20
|
+
function getPatch({ filePath, fileContents, oldStr, newStr }) {
|
|
21
|
+
const escape = escapeSpecialChars;
|
|
22
|
+
const oldContent = escape(fileContents);
|
|
23
|
+
const newContent = oldContent.replace(escape(oldStr), escape(newStr));
|
|
24
|
+
const { hunks } = (0, diff_1.structuredPatch)(filePath, filePath, oldContent, newContent, '', '', {
|
|
25
|
+
context: PATCH_SURROUNDING_LINES,
|
|
26
|
+
});
|
|
27
|
+
return hunks.map(hunk => ({
|
|
28
|
+
...hunk,
|
|
29
|
+
lines: hunk.lines.map(unescapeSpecialChars),
|
|
21
30
|
}));
|
|
22
31
|
}
|
|
23
32
|
// 获取更新摘要信息
|
|
24
|
-
function getUpdateSummary(filePath,
|
|
25
|
-
const
|
|
26
|
-
const relativePath = (0, path_1.relative)((0, cwd_1.
|
|
27
|
-
|
|
28
|
-
const numAdditions =
|
|
29
|
-
const numRemovals =
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
if (numAdditions > 0 || numRemovals > 0) {
|
|
33
|
-
result += ' with ';
|
|
34
|
-
const changes = [];
|
|
35
|
-
if (numAdditions > 0) {
|
|
36
|
-
changes.push(`${numAdditions} ${numAdditions > 1 ? 'additions' : 'addition'}`);
|
|
37
|
-
}
|
|
38
|
-
if (numRemovals > 0) {
|
|
39
|
-
changes.push(`${numRemovals} ${numRemovals > 1 ? 'removals' : 'removal'}`);
|
|
40
|
-
}
|
|
41
|
-
result += changes.join(' and ');
|
|
33
|
+
function getUpdateSummary(filePath, patches) {
|
|
34
|
+
const hunks = patches ?? [];
|
|
35
|
+
const relativePath = (0, path_1.relative)((0, cwd_1.readInitialCwd)(), filePath);
|
|
36
|
+
const countLines = (prefix) => hunks.reduce((count, hunk) => count + hunk.lines.filter(l => l.startsWith(prefix)).length, 0);
|
|
37
|
+
const numAdditions = countLines('+');
|
|
38
|
+
const numRemovals = countLines('-');
|
|
39
|
+
if (numAdditions === 0 && numRemovals === 0) {
|
|
40
|
+
return `Updated ${relativePath}`;
|
|
42
41
|
}
|
|
43
|
-
|
|
42
|
+
const pluralize = (n, word) => `${n} ${n > 1 ? word + 's' : word}`;
|
|
43
|
+
const changes = [
|
|
44
|
+
numAdditions > 0 && pluralize(numAdditions, 'addition'),
|
|
45
|
+
numRemovals > 0 && pluralize(numRemovals, 'removal'),
|
|
46
|
+
].filter(Boolean);
|
|
47
|
+
return `Updated ${relativePath} with ${changes.join(' and ')}`;
|
|
44
48
|
}
|
|
45
49
|
// 获取代码diff片段
|
|
46
|
-
function getDiffContent(
|
|
47
|
-
const
|
|
48
|
-
if (
|
|
50
|
+
function getDiffContent(patches) {
|
|
51
|
+
const hunks = patches ?? [];
|
|
52
|
+
if (hunks.length === 0)
|
|
49
53
|
return '';
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
if (index > 0) {
|
|
54
|
-
result += '\n...\n';
|
|
55
|
-
}
|
|
56
|
-
// 格式化每个hunk的行
|
|
57
|
-
const formattedLines = formatDiffLines(hunk.lines, hunk.oldStart);
|
|
58
|
-
result += formattedLines.join('\n') + '\n';
|
|
59
|
-
});
|
|
60
|
-
return result;
|
|
54
|
+
return hunks
|
|
55
|
+
.map(hunk => formatDiffLines(hunk.lines, hunk.oldStart).join('\n') + '\n')
|
|
56
|
+
.join('\n...\n');
|
|
61
57
|
}
|
|
62
58
|
// 格式化diff行,使用5位行号 + 标识符 + 代码的格式
|
|
63
|
-
function formatDiffLines(lines,
|
|
64
|
-
const
|
|
65
|
-
if (code.startsWith('+')) {
|
|
66
|
-
return {
|
|
67
|
-
code: code.slice(1), // 移除开头的+/-符号
|
|
68
|
-
type: 'add',
|
|
69
|
-
};
|
|
70
|
-
}
|
|
71
|
-
if (code.startsWith('-')) {
|
|
72
|
-
return {
|
|
73
|
-
code: code.slice(1), // 移除开头的+/-符号
|
|
74
|
-
type: 'remove',
|
|
75
|
-
};
|
|
76
|
-
}
|
|
77
|
-
return { code, type: 'nochange' };
|
|
78
|
-
}), startingLineNumber);
|
|
79
|
-
return numberedLines.map(({ type, code, i }) => {
|
|
80
|
-
const lineNumber = i.toString().padStart(5); // 5位行号
|
|
81
|
-
const changeChar = type === 'add' ? '+' : type === 'remove' ? '-' : ' ';
|
|
82
|
-
return `${lineNumber}${changeChar}${code}`;
|
|
83
|
-
});
|
|
84
|
-
}
|
|
85
|
-
// 为diff行分配行号
|
|
86
|
-
function numberDiffLines(diff, startLine) {
|
|
87
|
-
let i = startLine;
|
|
59
|
+
function formatDiffLines(lines, startLine) {
|
|
60
|
+
const markerMap = { '+': '+', '-': '-' };
|
|
88
61
|
const result = [];
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
const
|
|
92
|
-
const
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
result.push(line);
|
|
109
|
-
let numRemoved = 0;
|
|
110
|
-
while (queue[0]?.type === 'remove') {
|
|
111
|
-
const { code, type } = queue.shift();
|
|
112
|
-
const line = {
|
|
113
|
-
code: code,
|
|
114
|
-
type,
|
|
115
|
-
i: i + numRemoved + 1,
|
|
116
|
-
};
|
|
117
|
-
result.push(line);
|
|
118
|
-
numRemoved++;
|
|
119
|
-
}
|
|
120
|
-
i -= numRemoved;
|
|
121
|
-
break;
|
|
122
|
-
}
|
|
62
|
+
let lineNum = startLine;
|
|
63
|
+
for (let idx = 0; idx < lines.length;) {
|
|
64
|
+
const prefix = lines[idx][0];
|
|
65
|
+
const code = prefix === '+' || prefix === '-' ? lines[idx].slice(1) : lines[idx];
|
|
66
|
+
const marker = markerMap[prefix] ?? ' ';
|
|
67
|
+
if (prefix !== '-') {
|
|
68
|
+
result.push(`${lineNum.toString().padStart(5)}${marker}${code}`);
|
|
69
|
+
lineNum++;
|
|
70
|
+
idx++;
|
|
71
|
+
continue;
|
|
72
|
+
}
|
|
73
|
+
// 连续 remove 行分组处理,显示旧文件行号
|
|
74
|
+
result.push(`${lineNum.toString().padStart(5)}-${code}`);
|
|
75
|
+
idx++;
|
|
76
|
+
let extraRemoves = 0;
|
|
77
|
+
while (idx < lines.length && lines[idx][0] === '-') {
|
|
78
|
+
result.push(`${(lineNum + extraRemoves + 1).toString().padStart(5)}-${lines[idx].slice(1)}`);
|
|
79
|
+
extraRemoves++;
|
|
80
|
+
idx++;
|
|
123
81
|
}
|
|
82
|
+
lineNum -= extraRemoves;
|
|
124
83
|
}
|
|
125
84
|
return result;
|
|
126
85
|
}
|
package/dist/util/diff.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diff.js","sourceRoot":"","sources":["../../src/util/diff.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"diff.js","sourceRoot":"","sources":["../../src/util/diff.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,7 @@
|
|
|
1
1
|
import { type Hunk } from 'diff';
|
|
2
|
-
|
|
3
|
-
* Applies an edit to a file and returns the patch and updated file.
|
|
4
|
-
* Does not write the file to disk.
|
|
5
|
-
*/
|
|
2
|
+
export declare function normalizeLF(str: string): string;
|
|
6
3
|
export declare function applyEdit(file_path: string, old_string: string, new_string: string, replace_all?: boolean): {
|
|
7
4
|
patch: Hunk[];
|
|
8
5
|
updatedFile: string;
|
|
9
6
|
};
|
|
10
|
-
//# sourceMappingURL=
|
|
7
|
+
//# sourceMappingURL=edit.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"edit.d.ts","sourceRoot":"","sources":["../../src/util/edit.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,MAAM,CAAA;AAGhC,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED,wBAAgB,SAAS,CACvB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,WAAW,GAAE,OAAe,GAC3B;IAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAuCxC"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.normalizeLF = normalizeLF;
|
|
4
|
+
exports.applyEdit = applyEdit;
|
|
5
|
+
const fs_1 = require("fs");
|
|
6
|
+
const file_1 = require("./file");
|
|
7
|
+
const diff_1 = require("./diff");
|
|
8
|
+
function normalizeLF(str) {
|
|
9
|
+
return str.replace(/\r\n/g, '\n').replace(/\r/g, '\n');
|
|
10
|
+
}
|
|
11
|
+
function applyEdit(file_path, old_string, new_string, replace_all = false) {
|
|
12
|
+
const fullFilePath = (0, file_1.canonicalizeFilePath)(file_path);
|
|
13
|
+
let originalFile;
|
|
14
|
+
let updatedFile;
|
|
15
|
+
if (old_string === '') {
|
|
16
|
+
originalFile = '';
|
|
17
|
+
updatedFile = normalizeLF(new_string);
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
const enc = (0, file_1.inferFileEncoding)(fullFilePath);
|
|
21
|
+
originalFile = normalizeLF((0, fs_1.readFileSync)(fullFilePath, enc));
|
|
22
|
+
const oldStr = normalizeLF(old_string);
|
|
23
|
+
const newStr = normalizeLF(new_string);
|
|
24
|
+
const doReplace = replace_all
|
|
25
|
+
? (s, from, to) => s.replaceAll(from, to)
|
|
26
|
+
: (s, from, to) => s.replace(from, to);
|
|
27
|
+
// 删除操作时,尝试连带删除尾部换行以避免留空行
|
|
28
|
+
const searchStr = newStr === '' && !oldStr.endsWith('\n') && originalFile.includes(oldStr + '\n')
|
|
29
|
+
? oldStr + '\n'
|
|
30
|
+
: oldStr;
|
|
31
|
+
updatedFile = doReplace(originalFile, searchStr, newStr);
|
|
32
|
+
if (updatedFile === originalFile) {
|
|
33
|
+
throw new Error('No changes detected, edit failed.');
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
const patch = (0, diff_1.getPatch)({
|
|
37
|
+
filePath: file_path,
|
|
38
|
+
fileContents: originalFile,
|
|
39
|
+
oldStr: originalFile,
|
|
40
|
+
newStr: updatedFile,
|
|
41
|
+
});
|
|
42
|
+
return { patch, updatedFile };
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=edit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"edit.js","sourceRoot":"","sources":["../../src/util/edit.ts"],"names":[],"mappings":";;AAKA,kCAEC;AAED,8BA4CC;AArDD,2BAAiC;AACjC,iCAAgE;AAEhE,iCAAiC;AAEjC,SAAgB,WAAW,CAAC,GAAW;IACrC,OAAO,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;AACxD,CAAC;AAED,SAAgB,SAAS,CACvB,SAAiB,EACjB,UAAkB,EAClB,UAAkB,EAClB,cAAuB,KAAK;IAE5B,MAAM,YAAY,GAAG,IAAA,2BAAoB,EAAC,SAAS,CAAC,CAAA;IAEpD,IAAI,YAAoB,CAAA;IACxB,IAAI,WAAmB,CAAA;IAEvB,IAAI,UAAU,KAAK,EAAE,EAAE,CAAC;QACtB,YAAY,GAAG,EAAE,CAAA;QACjB,WAAW,GAAG,WAAW,CAAC,UAAU,CAAC,CAAA;IACvC,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,GAAG,IAAA,wBAAiB,EAAC,YAAY,CAAC,CAAA;QAC3C,YAAY,GAAG,WAAW,CAAC,IAAA,iBAAY,EAAC,YAAY,EAAE,GAAG,CAAC,CAAC,CAAA;QAE3D,MAAM,MAAM,GAAG,WAAW,CAAC,UAAU,CAAC,CAAA;QACtC,MAAM,MAAM,GAAG,WAAW,CAAC,UAAU,CAAC,CAAA;QACtC,MAAM,SAAS,GAAG,WAAW;YAC3B,CAAC,CAAC,CAAC,CAAS,EAAE,IAAY,EAAE,EAAU,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC;YACjE,CAAC,CAAC,CAAC,CAAS,EAAE,IAAY,EAAE,EAAU,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;QAEhE,yBAAyB;QACzB,MAAM,SAAS,GAAG,MAAM,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,YAAY,CAAC,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC;YAC/F,CAAC,CAAC,MAAM,GAAG,IAAI;YACf,CAAC,CAAC,MAAM,CAAA;QAEV,WAAW,GAAG,SAAS,CAAC,YAAY,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QAExD,IAAI,WAAW,KAAK,YAAY,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;QACtD,CAAC;IACH,CAAC;IAED,MAAM,KAAK,GAAG,IAAA,eAAQ,EAAC;QACrB,QAAQ,EAAE,SAAS;QACnB,YAAY,EAAE,YAAY;QAC1B,MAAM,EAAE,YAAY;QACpB,MAAM,EAAE,WAAW;KACpB,CAAC,CAAA;IAEF,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,CAAA;AAC/B,CAAC"}
|
package/dist/util/env.d.ts
CHANGED
package/dist/util/env.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../src/util/env.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../src/util/env.ts"],"names":[],"mappings":"AAQA,wBAAsB,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,CAsB9C"}
|
package/dist/util/env.js
CHANGED
|
@@ -3,24 +3,31 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.getEnv =
|
|
7
|
-
const lodash_es_1 = require("lodash-es");
|
|
6
|
+
exports.getEnv = getEnv;
|
|
8
7
|
const os_1 = __importDefault(require("os"));
|
|
9
8
|
const git_1 = require("./git");
|
|
10
9
|
const cwd_1 = require("./cwd");
|
|
10
|
+
const shell_1 = require("./shell");
|
|
11
11
|
const platform_1 = require("./platform");
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
const cwd = (0, cwd_1.
|
|
12
|
+
let cached;
|
|
13
|
+
async function getEnv() {
|
|
14
|
+
if (cached)
|
|
15
|
+
return cached;
|
|
16
|
+
const cwd = (0, cwd_1.readInitialCwd)();
|
|
17
17
|
const isGitRepo = await (0, git_1.getIsGit)();
|
|
18
|
-
const
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
18
|
+
const lines = [
|
|
19
|
+
`Working dir: ${cwd}`,
|
|
20
|
+
`Is a Git repo: ${isGitRepo ? 'Yes' : 'No'}`,
|
|
21
|
+
`Platform: ${process.platform}`,
|
|
22
|
+
`OS: ${os_1.default.type()} ${os_1.default.release()}`,
|
|
23
|
+
];
|
|
24
|
+
if (platform_1.IS_WIN) {
|
|
25
|
+
const shell = (0, shell_1.getShellRuntimeInfo)();
|
|
26
|
+
lines.push(`Shell type: ${shell?.type ?? 'unknown'}`);
|
|
27
|
+
if (shell?.bin)
|
|
28
|
+
lines.push(`Shell binary: ${shell.bin}`);
|
|
29
|
+
}
|
|
30
|
+
cached = lines.join('\n');
|
|
31
|
+
return cached;
|
|
32
|
+
}
|
|
26
33
|
//# sourceMappingURL=env.js.map
|
package/dist/util/env.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"env.js","sourceRoot":"","sources":["../../src/util/env.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"env.js","sourceRoot":"","sources":["../../src/util/env.ts"],"names":[],"mappings":";;;;;AAQA,wBAsBC;AA9BD,4CAAmB;AACnB,+BAAgC;AAChC,+BAAsC;AACtC,mCAA6C;AAC7C,yCAAmC;AAEnC,IAAI,MAA0B,CAAA;AAEvB,KAAK,UAAU,MAAM;IAC1B,IAAI,MAAM;QAAE,OAAO,MAAM,CAAA;IAEzB,MAAM,GAAG,GAAG,IAAA,oBAAc,GAAE,CAAA;IAC5B,MAAM,SAAS,GAAG,MAAM,IAAA,cAAQ,GAAE,CAAA;IAElC,MAAM,KAAK,GAAG;QACZ,gBAAgB,GAAG,EAAE;QACrB,kBAAkB,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;QAC5C,aAAa,OAAO,CAAC,QAAQ,EAAE;QAC/B,OAAO,YAAE,CAAC,IAAI,EAAE,IAAI,YAAE,CAAC,OAAO,EAAE,EAAE;KACnC,CAAA;IAED,IAAI,iBAAM,EAAE,CAAC;QACX,MAAM,KAAK,GAAG,IAAA,2BAAmB,GAAE,CAAA;QACnC,KAAK,CAAC,IAAI,CAAC,eAAe,KAAK,EAAE,IAAI,IAAI,SAAS,EAAE,CAAC,CAAA;QACrD,IAAI,KAAK,EAAE,GAAG;YAAE,KAAK,CAAC,IAAI,CAAC,iBAAiB,KAAK,CAAC,GAAG,EAAE,CAAC,CAAA;IAC1D,CAAC;IAED,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEzB,OAAO,MAAM,CAAA;AACf,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export declare const FETCH_URL_MAX_MARKDOWN_LEN = 50000;
|
|
2
|
+
export type FetchUrlResult = {
|
|
3
|
+
content: string;
|
|
4
|
+
bytes: number;
|
|
5
|
+
code: number;
|
|
6
|
+
codeText: string;
|
|
7
|
+
contentType: string;
|
|
8
|
+
};
|
|
9
|
+
type RedirectRecord = {
|
|
10
|
+
type: 'redirect';
|
|
11
|
+
originalUrl: string;
|
|
12
|
+
redirectUrl: string;
|
|
13
|
+
statusCode: number;
|
|
14
|
+
};
|
|
15
|
+
export declare function fetchUrlAsMarkdown(url: string, abortController: AbortController): Promise<FetchUrlResult | RedirectRecord>;
|
|
16
|
+
export declare function injectPromptIntoMarkdown(prompt: string, markdownContent: string, signal: AbortSignal): Promise<string>;
|
|
17
|
+
export {};
|
|
18
|
+
//# sourceMappingURL=fetchUrl.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetchUrl.d.ts","sourceRoot":"","sources":["../../src/util/fetchUrl.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,0BAA0B,QAAS,CAAA;AAEhD,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;CACpB,CAAA;AAED,KAAK,cAAc,GAAG;IACpB,IAAI,EAAE,UAAU,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;CACnB,CAAA;AAQD,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,MAAM,EACX,eAAe,EAAE,eAAe,GAC/B,OAAO,CAAC,cAAc,GAAG,cAAc,CAAC,CAsE1C;AAED,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,MAAM,EACvB,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,MAAM,CAAC,CAiBjB"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FETCH_URL_MAX_MARKDOWN_LEN = void 0;
|
|
4
|
+
exports.fetchUrlAsMarkdown = fetchUrlAsMarkdown;
|
|
5
|
+
exports.injectPromptIntoMarkdown = injectPromptIntoMarkdown;
|
|
6
|
+
const log_1 = require("./log");
|
|
7
|
+
const fetchUrl_1 = require("../prompt/tools/fetchUrl");
|
|
8
|
+
const queryLLM_1 = require("../services/api/queryLLM");
|
|
9
|
+
const MAX_CONTENT_BYTES = 5 * 1024 * 1024; // 5MB
|
|
10
|
+
const TIMEOUT_MS = 30_000;
|
|
11
|
+
exports.FETCH_URL_MAX_MARKDOWN_LEN = 50_000;
|
|
12
|
+
function createTurndown() {
|
|
13
|
+
const mod = require('turndown');
|
|
14
|
+
const Ctor = mod.default ?? mod;
|
|
15
|
+
return new Ctor();
|
|
16
|
+
}
|
|
17
|
+
async function fetchUrlAsMarkdown(url, abortController) {
|
|
18
|
+
try {
|
|
19
|
+
const parsed = new URL(url);
|
|
20
|
+
if (url.length > 1000 || parsed.username || parsed.password || !parsed.hostname.includes('.')) {
|
|
21
|
+
throw new Error('The provided URL is not valid.');
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
catch (e) {
|
|
25
|
+
throw e instanceof Error && e.message === 'The provided URL is not valid.' ? e : new Error('The provided URL is not valid.');
|
|
26
|
+
}
|
|
27
|
+
// http -> https
|
|
28
|
+
try {
|
|
29
|
+
const parsed = new URL(url);
|
|
30
|
+
if (parsed.protocol === 'http:') {
|
|
31
|
+
parsed.protocol = 'https:';
|
|
32
|
+
url = parsed.toString();
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
catch { }
|
|
36
|
+
const originalOrigin = new URL(url).origin;
|
|
37
|
+
const timer = setTimeout(() => abortController.abort(), TIMEOUT_MS);
|
|
38
|
+
let response;
|
|
39
|
+
try {
|
|
40
|
+
response = await globalThis.fetch(url, {
|
|
41
|
+
signal: abortController.signal,
|
|
42
|
+
redirect: 'follow',
|
|
43
|
+
headers: {
|
|
44
|
+
Accept: 'text/markdown, text/html, */*',
|
|
45
|
+
'User-Agent': 'sema-code-core/1.0 fetch_url',
|
|
46
|
+
},
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
finally {
|
|
50
|
+
clearTimeout(timer);
|
|
51
|
+
}
|
|
52
|
+
// 检测跨域重定向
|
|
53
|
+
if (response.redirected && response.url) {
|
|
54
|
+
const finalOrigin = new URL(response.url).origin;
|
|
55
|
+
if (finalOrigin !== originalOrigin) {
|
|
56
|
+
return {
|
|
57
|
+
type: 'redirect',
|
|
58
|
+
originalUrl: url,
|
|
59
|
+
redirectUrl: response.url,
|
|
60
|
+
statusCode: 301,
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
const rawBuffer = Buffer.from(await response.arrayBuffer());
|
|
65
|
+
if (rawBuffer.length > MAX_CONTENT_BYTES) {
|
|
66
|
+
throw new Error(`Response body too large: ${rawBuffer.length} bytes (limit ${MAX_CONTENT_BYTES})`);
|
|
67
|
+
}
|
|
68
|
+
const contentType = response.headers.get('content-type') ?? '';
|
|
69
|
+
let content = rawBuffer.toString('utf-8');
|
|
70
|
+
if (contentType.includes('text/html')) {
|
|
71
|
+
try {
|
|
72
|
+
content = createTurndown().turndown(content);
|
|
73
|
+
}
|
|
74
|
+
catch { }
|
|
75
|
+
}
|
|
76
|
+
return {
|
|
77
|
+
bytes: rawBuffer.length,
|
|
78
|
+
code: response.status,
|
|
79
|
+
codeText: response.statusText,
|
|
80
|
+
content,
|
|
81
|
+
contentType,
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
async function injectPromptIntoMarkdown(prompt, markdownContent, signal) {
|
|
85
|
+
const truncated = markdownContent.length > exports.FETCH_URL_MAX_MARKDOWN_LEN
|
|
86
|
+
? markdownContent.slice(0, exports.FETCH_URL_MAX_MARKDOWN_LEN) + '\n\n[Content trimmed — exceeded length limit.]'
|
|
87
|
+
: markdownContent;
|
|
88
|
+
const userPrompt = (0, fetchUrl_1.buildSecondaryModelPrompt)(truncated, prompt);
|
|
89
|
+
try {
|
|
90
|
+
const { message } = await (0, queryLLM_1.queryQuick)({ userPrompt, signal });
|
|
91
|
+
const firstBlock = message.content[0];
|
|
92
|
+
return firstBlock && 'text' in firstBlock ? firstBlock.text : 'The model returned an empty response.';
|
|
93
|
+
}
|
|
94
|
+
catch (e) {
|
|
95
|
+
if (signal.aborted)
|
|
96
|
+
throw new Error('AbortError');
|
|
97
|
+
(0, log_1.logError)(e);
|
|
98
|
+
return 'Content processing by the model failed.';
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
//# sourceMappingURL=fetchUrl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetchUrl.js","sourceRoot":"","sources":["../../src/util/fetchUrl.ts"],"names":[],"mappings":"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"}
|
package/dist/util/file.d.ts
CHANGED
|
@@ -1,77 +1,64 @@
|
|
|
1
|
-
export type
|
|
2
|
-
|
|
3
|
-
content: string;
|
|
4
|
-
};
|
|
5
|
-
export type LineEndingType = 'CRLF' | 'LF';
|
|
6
|
-
export declare function glob(filePattern: string, cwd: string, { limit, offset }: {
|
|
1
|
+
export type LineEndingKind = 'CRLF' | 'LF';
|
|
2
|
+
export declare function globFiles(filePattern: string, cwd: string, { limit, offset }: {
|
|
7
3
|
limit: number;
|
|
8
4
|
offset: number;
|
|
9
5
|
}, abortSignal: AbortSignal): Promise<{
|
|
10
6
|
files: string[];
|
|
11
7
|
truncated: boolean;
|
|
12
8
|
}>;
|
|
13
|
-
|
|
9
|
+
/**
|
|
10
|
+
* 判断目标路径是否在工作目录内部
|
|
11
|
+
*/
|
|
14
12
|
export declare function isInDirectory(relativePath: string, relativeCwd: string): boolean;
|
|
13
|
+
/**
|
|
14
|
+
* 读取文本文件内容,自动标准化换行符为 LF
|
|
15
|
+
*/
|
|
15
16
|
export declare function readTextContent(filePath: string, offset?: number, maxLines?: number): {
|
|
16
17
|
content: string;
|
|
17
18
|
lineCount: number;
|
|
18
19
|
totalLines: number;
|
|
19
20
|
};
|
|
20
|
-
export declare function writeTextContent(filePath: string, content: string, encoding: BufferEncoding, endings: LineEndingType): void;
|
|
21
|
-
export declare function detectRepoLineEndings(filePath: string): Promise<LineEndingType | undefined>;
|
|
22
|
-
export declare function detectRepoLineEndingsDirect(cwd: string): Promise<LineEndingType>;
|
|
23
|
-
export declare function detectFileEncoding(filePath: string): BufferEncoding;
|
|
24
|
-
export declare function detectFileEncodingDirect(filePath: string): BufferEncoding;
|
|
25
|
-
export declare function detectLineEndings(filePath: string): LineEndingType;
|
|
26
|
-
export declare function detectLineEndingsDirect(filePath: string, encoding?: BufferEncoding): LineEndingType;
|
|
27
21
|
/**
|
|
28
|
-
*
|
|
22
|
+
* 写入文本文件,按指定换行符格式输出
|
|
29
23
|
*/
|
|
30
|
-
export declare function
|
|
31
|
-
export declare function
|
|
24
|
+
export declare function writeTextFile(filePath: string, content: string, encoding: BufferEncoding, endings: LineEndingKind): void;
|
|
25
|
+
export declare function inferFileEncoding(filePath: string): BufferEncoding;
|
|
26
|
+
export declare function inferLineEndings(filePath: string): LineEndingKind;
|
|
27
|
+
export declare function canonicalizeFilePath(filePath: string): string;
|
|
32
28
|
/**
|
|
33
|
-
*
|
|
34
|
-
* 用于 skill 系统中需要保持路径结构的场景
|
|
29
|
+
* 在同目录下查找同名但不同扩展名的文件
|
|
35
30
|
*/
|
|
36
|
-
export declare function
|
|
37
|
-
export declare function getAbsolutePath(path: string | undefined): string | undefined;
|
|
38
|
-
export declare function getAbsoluteAndRelativePaths(path: string | undefined): {
|
|
39
|
-
absolutePath: string | undefined;
|
|
40
|
-
relativePath: string | undefined;
|
|
41
|
-
};
|
|
31
|
+
export declare function findFileWithDifferentExt(filePath: string): string | undefined;
|
|
42
32
|
/**
|
|
43
|
-
*
|
|
44
|
-
* @param filePath The path to the file that doesn't exist
|
|
45
|
-
* @returns The found file with a different extension, or undefined if none found
|
|
33
|
+
* 为文本内容添加行号(cat -n 风格)
|
|
46
34
|
*/
|
|
47
|
-
export declare function
|
|
48
|
-
/**
|
|
49
|
-
* Adds cat -n style line numbers to the content
|
|
50
|
-
*/
|
|
51
|
-
export declare function addLineNumbers({ content, startLine, }: {
|
|
35
|
+
export declare function formatWithLineNumbers({ content, startLine, }: {
|
|
52
36
|
content: string;
|
|
53
37
|
startLine: number;
|
|
54
38
|
}): string;
|
|
55
|
-
/**
|
|
56
|
-
* Checks if a directory is empty by efficiently reading just the first entry
|
|
57
|
-
* @param dirPath The path to the directory to check
|
|
58
|
-
* @returns true if the directory is empty, false otherwise
|
|
59
|
-
*/
|
|
60
|
-
export declare function isDirEmpty(dirPath: string): boolean;
|
|
61
39
|
/**
|
|
62
40
|
* 在 JSON.stringify(data, null, 2) 生成的文本中,查找包含 match 的对象块行范围。
|
|
63
41
|
*
|
|
64
42
|
* 算法:找到 match 所在行,往回找最近的含 '{' 的行作为对象起始,
|
|
65
43
|
* 记录该行缩进,然后往下找同缩进的 '}' 行作为对象结束。
|
|
66
44
|
*
|
|
67
|
-
* @param json JSON 文本(需 2-space 缩进格式)
|
|
68
|
-
* @param match 匹配文本,如 `"id": "abc123"` 或 `"sequential-thinking"`
|
|
69
|
-
* @returns [startLine, endLine](1-based),未找到返回 undefined
|
|
70
45
|
*/
|
|
71
46
|
export declare function findJsonObjectLineRange(json: string, match: string): [number, number] | undefined;
|
|
72
47
|
/**
|
|
73
|
-
*
|
|
74
|
-
|
|
48
|
+
* 获取相对于初始工作目录的显示路径,超出范围则返回绝对路径
|
|
49
|
+
*/
|
|
50
|
+
export declare function getDisplayPath(filePath: string): string;
|
|
51
|
+
/**
|
|
52
|
+
* 获取文件路径(从工具输入中)
|
|
75
53
|
*/
|
|
76
|
-
export declare function
|
|
54
|
+
export declare function getFilePath(input: {
|
|
55
|
+
[key: string]: unknown;
|
|
56
|
+
}): string | undefined;
|
|
57
|
+
interface ExecResult {
|
|
58
|
+
stdout: string;
|
|
59
|
+
stderr: string;
|
|
60
|
+
code: number;
|
|
61
|
+
}
|
|
62
|
+
export declare function execFileSafely(file: string, args: string[], abortSignal?: AbortSignal, timeout?: number, preserveOutputOnError?: boolean, cwd?: string): Promise<ExecResult>;
|
|
63
|
+
export {};
|
|
77
64
|
//# sourceMappingURL=file.d.ts.map
|
package/dist/util/file.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../src/util/file.ts"],"names":[],"mappings":"AA4BA,MAAM,MAAM,
|
|
1
|
+
{"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../src/util/file.ts"],"names":[],"mappings":"AA4BA,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,IAAI,CAAA;AAE1C,wBAAsB,SAAS,CAC7B,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,MAAM,EACX,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EACpD,WAAW,EAAE,WAAW,GACvB,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,CAAC,CAiBlD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC3B,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,MAAM,GAClB,OAAO,CAqCT;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,MAAM,EAChB,MAAM,SAAI,EACV,QAAQ,CAAC,EAAE,MAAM,GAChB;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAmB5D;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,cAAc,EACxB,OAAO,EAAE,cAAc,GACtB,IAAI,CAON;AAoCD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,CAuBlE;AAED,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,CAajE;AAID,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAgB7D;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAsB7E;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,EACpC,OAAO,EACP,SAAS,GACV,EAAE;IACD,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;CAClB,GAAG,MAAM,CAOT;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CA6BjG;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAGvD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,GAAG,MAAM,GAAG,SAAS,CAEjF;AAQD,UAAU,UAAU;IAClB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;CACb;AAGD,wBAAsB,cAAc,CAClC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EAAE,EACd,WAAW,CAAC,EAAE,WAAW,EACzB,OAAO,SAAuB,EAC9B,qBAAqB,UAAO,EAC5B,GAAG,CAAC,EAAE,MAAM,GACX,OAAO,CAAC,UAAU,CAAC,CAsBrB"}
|