hanseol-dev 4.0.12
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/LICENSE +21 -0
- package/README.md +267 -0
- package/dist/agents/base/base-agent.d.ts +38 -0
- package/dist/agents/base/base-agent.d.ts.map +1 -0
- package/dist/agents/base/base-agent.js +69 -0
- package/dist/agents/base/base-agent.js.map +1 -0
- package/dist/agents/docs-search/index.d.ts +33 -0
- package/dist/agents/docs-search/index.d.ts.map +1 -0
- package/dist/agents/docs-search/index.js +244 -0
- package/dist/agents/docs-search/index.js.map +1 -0
- package/dist/agents/index.d.ts +4 -0
- package/dist/agents/index.d.ts.map +1 -0
- package/dist/agents/index.js +4 -0
- package/dist/agents/index.js.map +1 -0
- package/dist/agents/planner/index.d.ts +19 -0
- package/dist/agents/planner/index.d.ts.map +1 -0
- package/dist/agents/planner/index.js +339 -0
- package/dist/agents/planner/index.js.map +1 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +205 -0
- package/dist/cli.js.map +1 -0
- package/dist/constants.d.ts +10 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +12 -0
- package/dist/constants.js.map +1 -0
- package/dist/core/auth/oauth-login.d.ts +19 -0
- package/dist/core/auth/oauth-login.d.ts.map +1 -0
- package/dist/core/auth/oauth-login.js +197 -0
- package/dist/core/auth/oauth-login.js.map +1 -0
- package/dist/core/compact/compact-manager.d.ts +22 -0
- package/dist/core/compact/compact-manager.d.ts.map +1 -0
- package/dist/core/compact/compact-manager.js +75 -0
- package/dist/core/compact/compact-manager.js.map +1 -0
- package/dist/core/compact/compact-prompts.d.ts +11 -0
- package/dist/core/compact/compact-prompts.d.ts.map +1 -0
- package/dist/core/compact/compact-prompts.js +90 -0
- package/dist/core/compact/compact-prompts.js.map +1 -0
- package/dist/core/compact/context-tracker.d.ts +28 -0
- package/dist/core/compact/context-tracker.d.ts.map +1 -0
- package/dist/core/compact/context-tracker.js +71 -0
- package/dist/core/compact/context-tracker.js.map +1 -0
- package/dist/core/compact/index.d.ts +4 -0
- package/dist/core/compact/index.d.ts.map +1 -0
- package/dist/core/compact/index.js +4 -0
- package/dist/core/compact/index.js.map +1 -0
- package/dist/core/config/config-manager.d.ts +43 -0
- package/dist/core/config/config-manager.d.ts.map +1 -0
- package/dist/core/config/config-manager.js +254 -0
- package/dist/core/config/config-manager.js.map +1 -0
- package/dist/core/config/index.d.ts +2 -0
- package/dist/core/config/index.d.ts.map +1 -0
- package/dist/core/config/index.js +2 -0
- package/dist/core/config/index.js.map +1 -0
- package/dist/core/docs-manager.d.ts +46 -0
- package/dist/core/docs-manager.d.ts.map +1 -0
- package/dist/core/docs-manager.js +475 -0
- package/dist/core/docs-manager.js.map +1 -0
- package/dist/core/llm/index.d.ts +2 -0
- package/dist/core/llm/index.d.ts.map +1 -0
- package/dist/core/llm/index.js +2 -0
- package/dist/core/llm/index.js.map +1 -0
- package/dist/core/llm/llm-client.d.ts +98 -0
- package/dist/core/llm/llm-client.d.ts.map +1 -0
- package/dist/core/llm/llm-client.js +1024 -0
- package/dist/core/llm/llm-client.js.map +1 -0
- package/dist/core/s3-auto-updater.d.ts +44 -0
- package/dist/core/s3-auto-updater.d.ts.map +1 -0
- package/dist/core/s3-auto-updater.js +158 -0
- package/dist/core/s3-auto-updater.js.map +1 -0
- package/dist/core/session/index.d.ts +2 -0
- package/dist/core/session/index.d.ts.map +1 -0
- package/dist/core/session/index.js +2 -0
- package/dist/core/session/index.js.map +1 -0
- package/dist/core/session/session-manager.d.ts +71 -0
- package/dist/core/session/session-manager.d.ts.map +1 -0
- package/dist/core/session/session-manager.js +250 -0
- package/dist/core/session/session-manager.js.map +1 -0
- package/dist/core/slash-command-handler.d.ts +32 -0
- package/dist/core/slash-command-handler.d.ts.map +1 -0
- package/dist/core/slash-command-handler.js +455 -0
- package/dist/core/slash-command-handler.js.map +1 -0
- package/dist/core/usage-tracker.d.ts +74 -0
- package/dist/core/usage-tracker.d.ts.map +1 -0
- package/dist/core/usage-tracker.js +279 -0
- package/dist/core/usage-tracker.js.map +1 -0
- package/dist/errors/base.d.ts +22 -0
- package/dist/errors/base.d.ts.map +1 -0
- package/dist/errors/base.js +43 -0
- package/dist/errors/base.js.map +1 -0
- package/dist/errors/file.d.ts +31 -0
- package/dist/errors/file.d.ts.map +1 -0
- package/dist/errors/file.js +110 -0
- package/dist/errors/file.js.map +1 -0
- package/dist/errors/index.d.ts +12 -0
- package/dist/errors/index.d.ts.map +1 -0
- package/dist/errors/index.js +42 -0
- package/dist/errors/index.js.map +1 -0
- package/dist/errors/llm.d.ts +26 -0
- package/dist/errors/llm.d.ts.map +1 -0
- package/dist/errors/llm.js +86 -0
- package/dist/errors/llm.js.map +1 -0
- package/dist/errors/network.d.ts +19 -0
- package/dist/errors/network.d.ts.map +1 -0
- package/dist/errors/network.js +82 -0
- package/dist/errors/network.js.map +1 -0
- package/dist/errors/quota.d.ts +25 -0
- package/dist/errors/quota.d.ts.map +1 -0
- package/dist/errors/quota.js +10 -0
- package/dist/errors/quota.js.map +1 -0
- package/dist/errors/validation.d.ts +19 -0
- package/dist/errors/validation.d.ts.map +1 -0
- package/dist/errors/validation.js +62 -0
- package/dist/errors/validation.js.map +1 -0
- package/dist/eval/eval-runner.d.ts +24 -0
- package/dist/eval/eval-runner.d.ts.map +1 -0
- package/dist/eval/eval-runner.js +291 -0
- package/dist/eval/eval-runner.js.map +1 -0
- package/dist/eval/index.d.ts +3 -0
- package/dist/eval/index.d.ts.map +1 -0
- package/dist/eval/index.js +3 -0
- package/dist/eval/index.js.map +1 -0
- package/dist/eval/types.d.ts +77 -0
- package/dist/eval/types.d.ts.map +1 -0
- package/dist/eval/types.js +2 -0
- package/dist/eval/types.js.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -0
- package/dist/orchestration/index.d.ts +4 -0
- package/dist/orchestration/index.d.ts.map +1 -0
- package/dist/orchestration/index.js +3 -0
- package/dist/orchestration/index.js.map +1 -0
- package/dist/orchestration/plan-executor.d.ts +28 -0
- package/dist/orchestration/plan-executor.d.ts.map +1 -0
- package/dist/orchestration/plan-executor.js +376 -0
- package/dist/orchestration/plan-executor.js.map +1 -0
- package/dist/orchestration/types.d.ts +65 -0
- package/dist/orchestration/types.d.ts.map +1 -0
- package/dist/orchestration/types.js +2 -0
- package/dist/orchestration/types.js.map +1 -0
- package/dist/orchestration/utils.d.ts +13 -0
- package/dist/orchestration/utils.d.ts.map +1 -0
- package/dist/orchestration/utils.js +81 -0
- package/dist/orchestration/utils.js.map +1 -0
- package/dist/prompts/agents/docs-search-decision.d.ts +6 -0
- package/dist/prompts/agents/docs-search-decision.d.ts.map +1 -0
- package/dist/prompts/agents/docs-search-decision.js +46 -0
- package/dist/prompts/agents/docs-search-decision.js.map +1 -0
- package/dist/prompts/agents/docs-search.d.ts +4 -0
- package/dist/prompts/agents/docs-search.d.ts.map +1 -0
- package/dist/prompts/agents/docs-search.js +70 -0
- package/dist/prompts/agents/docs-search.js.map +1 -0
- package/dist/prompts/agents/planning.d.ts +4 -0
- package/dist/prompts/agents/planning.d.ts.map +1 -0
- package/dist/prompts/agents/planning.js +179 -0
- package/dist/prompts/agents/planning.js.map +1 -0
- package/dist/prompts/index.d.ts +10 -0
- package/dist/prompts/index.d.ts.map +1 -0
- package/dist/prompts/index.js +10 -0
- package/dist/prompts/index.js.map +1 -0
- package/dist/prompts/shared/codebase-rules.d.ts +4 -0
- package/dist/prompts/shared/codebase-rules.d.ts.map +1 -0
- package/dist/prompts/shared/codebase-rules.js +16 -0
- package/dist/prompts/shared/codebase-rules.js.map +1 -0
- package/dist/prompts/shared/git-rules.d.ts +2 -0
- package/dist/prompts/shared/git-rules.d.ts.map +1 -0
- package/dist/prompts/shared/git-rules.js +87 -0
- package/dist/prompts/shared/git-rules.js.map +1 -0
- package/dist/prompts/shared/language-rules.d.ts +4 -0
- package/dist/prompts/shared/language-rules.d.ts.map +1 -0
- package/dist/prompts/shared/language-rules.js +22 -0
- package/dist/prompts/shared/language-rules.js.map +1 -0
- package/dist/prompts/shared/tool-usage.d.ts +12 -0
- package/dist/prompts/shared/tool-usage.d.ts.map +1 -0
- package/dist/prompts/shared/tool-usage.js +51 -0
- package/dist/prompts/shared/tool-usage.js.map +1 -0
- package/dist/prompts/system/compact.d.ts +3 -0
- package/dist/prompts/system/compact.d.ts.map +1 -0
- package/dist/prompts/system/compact.js +73 -0
- package/dist/prompts/system/compact.js.map +1 -0
- package/dist/prompts/system/plan-execute.d.ts +3 -0
- package/dist/prompts/system/plan-execute.d.ts.map +1 -0
- package/dist/prompts/system/plan-execute.js +119 -0
- package/dist/prompts/system/plan-execute.js.map +1 -0
- package/dist/tools/browser/browser-client.d.ts +119 -0
- package/dist/tools/browser/browser-client.d.ts.map +1 -0
- package/dist/tools/browser/browser-client.js +1083 -0
- package/dist/tools/browser/browser-client.js.map +1 -0
- package/dist/tools/browser/browser-tools.d.ts +23 -0
- package/dist/tools/browser/browser-tools.d.ts.map +1 -0
- package/dist/tools/browser/browser-tools.js +1347 -0
- package/dist/tools/browser/browser-tools.js.map +1 -0
- package/dist/tools/browser/index.d.ts +7 -0
- package/dist/tools/browser/index.d.ts.map +1 -0
- package/dist/tools/browser/index.js +17 -0
- package/dist/tools/browser/index.js.map +1 -0
- package/dist/tools/index.d.ts +4 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +4 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/llm/agents/docs-search-tools.d.ts +17 -0
- package/dist/tools/llm/agents/docs-search-tools.d.ts.map +1 -0
- package/dist/tools/llm/agents/docs-search-tools.js +265 -0
- package/dist/tools/llm/agents/docs-search-tools.js.map +1 -0
- package/dist/tools/llm/agents/index.d.ts +4 -0
- package/dist/tools/llm/agents/index.d.ts.map +1 -0
- package/dist/tools/llm/agents/index.js +3 -0
- package/dist/tools/llm/agents/index.js.map +1 -0
- package/dist/tools/llm/index.d.ts +3 -0
- package/dist/tools/llm/index.d.ts.map +1 -0
- package/dist/tools/llm/index.js +3 -0
- package/dist/tools/llm/index.js.map +1 -0
- package/dist/tools/llm/simple/ask-user-tool.d.ts +5 -0
- package/dist/tools/llm/simple/ask-user-tool.d.ts.map +1 -0
- package/dist/tools/llm/simple/ask-user-tool.js +7 -0
- package/dist/tools/llm/simple/ask-user-tool.js.map +1 -0
- package/dist/tools/llm/simple/background-bash-tool.d.ts +30 -0
- package/dist/tools/llm/simple/background-bash-tool.d.ts.map +1 -0
- package/dist/tools/llm/simple/background-bash-tool.js +320 -0
- package/dist/tools/llm/simple/background-bash-tool.js.map +1 -0
- package/dist/tools/llm/simple/background-powershell-tool.d.ts +30 -0
- package/dist/tools/llm/simple/background-powershell-tool.d.ts.map +1 -0
- package/dist/tools/llm/simple/background-powershell-tool.js +302 -0
- package/dist/tools/llm/simple/background-powershell-tool.js.map +1 -0
- package/dist/tools/llm/simple/bash-tool.d.ts +4 -0
- package/dist/tools/llm/simple/bash-tool.d.ts.map +1 -0
- package/dist/tools/llm/simple/bash-tool.js +167 -0
- package/dist/tools/llm/simple/bash-tool.js.map +1 -0
- package/dist/tools/llm/simple/docs-search-agent-tool.d.ts +6 -0
- package/dist/tools/llm/simple/docs-search-agent-tool.d.ts.map +1 -0
- package/dist/tools/llm/simple/docs-search-agent-tool.js +104 -0
- package/dist/tools/llm/simple/docs-search-agent-tool.js.map +1 -0
- package/dist/tools/llm/simple/file-tools.d.ts +13 -0
- package/dist/tools/llm/simple/file-tools.d.ts.map +1 -0
- package/dist/tools/llm/simple/file-tools.js +751 -0
- package/dist/tools/llm/simple/file-tools.js.map +1 -0
- package/dist/tools/llm/simple/final-response-tool.d.ts +12 -0
- package/dist/tools/llm/simple/final-response-tool.d.ts.map +1 -0
- package/dist/tools/llm/simple/final-response-tool.js +107 -0
- package/dist/tools/llm/simple/final-response-tool.js.map +1 -0
- package/dist/tools/llm/simple/index.d.ts +11 -0
- package/dist/tools/llm/simple/index.d.ts.map +1 -0
- package/dist/tools/llm/simple/index.js +20 -0
- package/dist/tools/llm/simple/index.js.map +1 -0
- package/dist/tools/llm/simple/planning-tools.d.ts +6 -0
- package/dist/tools/llm/simple/planning-tools.d.ts.map +1 -0
- package/dist/tools/llm/simple/planning-tools.js +171 -0
- package/dist/tools/llm/simple/planning-tools.js.map +1 -0
- package/dist/tools/llm/simple/powershell-tool.d.ts +4 -0
- package/dist/tools/llm/simple/powershell-tool.d.ts.map +1 -0
- package/dist/tools/llm/simple/powershell-tool.js +150 -0
- package/dist/tools/llm/simple/powershell-tool.js.map +1 -0
- package/dist/tools/llm/simple/simple-tool-executor.d.ts +38 -0
- package/dist/tools/llm/simple/simple-tool-executor.d.ts.map +1 -0
- package/dist/tools/llm/simple/simple-tool-executor.js +134 -0
- package/dist/tools/llm/simple/simple-tool-executor.js.map +1 -0
- package/dist/tools/llm/simple/todo-tools.d.ts +15 -0
- package/dist/tools/llm/simple/todo-tools.d.ts.map +1 -0
- package/dist/tools/llm/simple/todo-tools.js +145 -0
- package/dist/tools/llm/simple/todo-tools.js.map +1 -0
- package/dist/tools/llm/simple/user-interaction-tools.d.ts +22 -0
- package/dist/tools/llm/simple/user-interaction-tools.d.ts.map +1 -0
- package/dist/tools/llm/simple/user-interaction-tools.js +168 -0
- package/dist/tools/llm/simple/user-interaction-tools.js.map +1 -0
- package/dist/tools/office/common/constants.d.ts +194 -0
- package/dist/tools/office/common/constants.d.ts.map +1 -0
- package/dist/tools/office/common/constants.js +169 -0
- package/dist/tools/office/common/constants.js.map +1 -0
- package/dist/tools/office/common/index.d.ts +4 -0
- package/dist/tools/office/common/index.d.ts.map +1 -0
- package/dist/tools/office/common/index.js +3 -0
- package/dist/tools/office/common/index.js.map +1 -0
- package/dist/tools/office/common/types.d.ts +82 -0
- package/dist/tools/office/common/types.d.ts.map +1 -0
- package/dist/tools/office/common/types.js +2 -0
- package/dist/tools/office/common/types.js.map +1 -0
- package/dist/tools/office/common/utils.d.ts +14 -0
- package/dist/tools/office/common/utils.d.ts.map +1 -0
- package/dist/tools/office/common/utils.js +58 -0
- package/dist/tools/office/common/utils.js.map +1 -0
- package/dist/tools/office/excel-client.d.ts +212 -0
- package/dist/tools/office/excel-client.d.ts.map +1 -0
- package/dist/tools/office/excel-client.js +2242 -0
- package/dist/tools/office/excel-client.js.map +1 -0
- package/dist/tools/office/excel-tools/advanced.d.ts +13 -0
- package/dist/tools/office/excel-tools/advanced.d.ts.map +1 -0
- package/dist/tools/office/excel-tools/advanced.js +364 -0
- package/dist/tools/office/excel-tools/advanced.js.map +1 -0
- package/dist/tools/office/excel-tools/cells.d.ts +10 -0
- package/dist/tools/office/excel-tools/cells.d.ts.map +1 -0
- package/dist/tools/office/excel-tools/cells.js +279 -0
- package/dist/tools/office/excel-tools/cells.js.map +1 -0
- package/dist/tools/office/excel-tools/charts.d.ts +12 -0
- package/dist/tools/office/excel-tools/charts.d.ts.map +1 -0
- package/dist/tools/office/excel-tools/charts.js +373 -0
- package/dist/tools/office/excel-tools/charts.js.map +1 -0
- package/dist/tools/office/excel-tools/comments.d.ts +7 -0
- package/dist/tools/office/excel-tools/comments.d.ts.map +1 -0
- package/dist/tools/office/excel-tools/comments.js +150 -0
- package/dist/tools/office/excel-tools/comments.js.map +1 -0
- package/dist/tools/office/excel-tools/data-ops.d.ts +14 -0
- package/dist/tools/office/excel-tools/data-ops.d.ts.map +1 -0
- package/dist/tools/office/excel-tools/data-ops.js +420 -0
- package/dist/tools/office/excel-tools/data-ops.js.map +1 -0
- package/dist/tools/office/excel-tools/export.d.ts +8 -0
- package/dist/tools/office/excel-tools/export.d.ts.map +1 -0
- package/dist/tools/office/excel-tools/export.js +191 -0
- package/dist/tools/office/excel-tools/export.js.map +1 -0
- package/dist/tools/office/excel-tools/formatting.d.ts +12 -0
- package/dist/tools/office/excel-tools/formatting.d.ts.map +1 -0
- package/dist/tools/office/excel-tools/formatting.js +350 -0
- package/dist/tools/office/excel-tools/formatting.js.map +1 -0
- package/dist/tools/office/excel-tools/formulas.d.ts +11 -0
- package/dist/tools/office/excel-tools/formulas.d.ts.map +1 -0
- package/dist/tools/office/excel-tools/formulas.js +313 -0
- package/dist/tools/office/excel-tools/formulas.js.map +1 -0
- package/dist/tools/office/excel-tools/index.d.ts +21 -0
- package/dist/tools/office/excel-tools/index.d.ts.map +1 -0
- package/dist/tools/office/excel-tools/index.js +57 -0
- package/dist/tools/office/excel-tools/index.js.map +1 -0
- package/dist/tools/office/excel-tools/launch.d.ts +10 -0
- package/dist/tools/office/excel-tools/launch.d.ts.map +1 -0
- package/dist/tools/office/excel-tools/launch.js +248 -0
- package/dist/tools/office/excel-tools/launch.js.map +1 -0
- package/dist/tools/office/excel-tools/media.d.ts +10 -0
- package/dist/tools/office/excel-tools/media.d.ts.map +1 -0
- package/dist/tools/office/excel-tools/media.js +260 -0
- package/dist/tools/office/excel-tools/media.js.map +1 -0
- package/dist/tools/office/excel-tools/named-ranges.d.ts +6 -0
- package/dist/tools/office/excel-tools/named-ranges.d.ts.map +1 -0
- package/dist/tools/office/excel-tools/named-ranges.js +113 -0
- package/dist/tools/office/excel-tools/named-ranges.js.map +1 -0
- package/dist/tools/office/excel-tools/page-setup.d.ts +6 -0
- package/dist/tools/office/excel-tools/page-setup.d.ts.map +1 -0
- package/dist/tools/office/excel-tools/page-setup.js +144 -0
- package/dist/tools/office/excel-tools/page-setup.js.map +1 -0
- package/dist/tools/office/excel-tools/pivot-table.d.ts +7 -0
- package/dist/tools/office/excel-tools/pivot-table.d.ts.map +1 -0
- package/dist/tools/office/excel-tools/pivot-table.js +151 -0
- package/dist/tools/office/excel-tools/pivot-table.js.map +1 -0
- package/dist/tools/office/excel-tools/protection.d.ts +5 -0
- package/dist/tools/office/excel-tools/protection.d.ts.map +1 -0
- package/dist/tools/office/excel-tools/protection.js +75 -0
- package/dist/tools/office/excel-tools/protection.js.map +1 -0
- package/dist/tools/office/excel-tools/rows-columns.d.ts +15 -0
- package/dist/tools/office/excel-tools/rows-columns.d.ts.map +1 -0
- package/dist/tools/office/excel-tools/rows-columns.js +440 -0
- package/dist/tools/office/excel-tools/rows-columns.js.map +1 -0
- package/dist/tools/office/excel-tools/sheets.d.ts +16 -0
- package/dist/tools/office/excel-tools/sheets.d.ts.map +1 -0
- package/dist/tools/office/excel-tools/sheets.js +465 -0
- package/dist/tools/office/excel-tools/sheets.js.map +1 -0
- package/dist/tools/office/excel-tools/tables.d.ts +7 -0
- package/dist/tools/office/excel-tools/tables.d.ts.map +1 -0
- package/dist/tools/office/excel-tools/tables.js +151 -0
- package/dist/tools/office/excel-tools/tables.js.map +1 -0
- package/dist/tools/office/excel-tools/validation.d.ts +7 -0
- package/dist/tools/office/excel-tools/validation.d.ts.map +1 -0
- package/dist/tools/office/excel-tools/validation.js +175 -0
- package/dist/tools/office/excel-tools/validation.js.map +1 -0
- package/dist/tools/office/excel-tools.d.ts +3 -0
- package/dist/tools/office/excel-tools.d.ts.map +1 -0
- package/dist/tools/office/excel-tools.js +3 -0
- package/dist/tools/office/excel-tools.js.map +1 -0
- package/dist/tools/office/index.d.ts +6 -0
- package/dist/tools/office/index.d.ts.map +1 -0
- package/dist/tools/office/index.js +9 -0
- package/dist/tools/office/index.js.map +1 -0
- package/dist/tools/office/office-client-base.d.ts +31 -0
- package/dist/tools/office/office-client-base.d.ts.map +1 -0
- package/dist/tools/office/office-client-base.js +154 -0
- package/dist/tools/office/office-client-base.js.map +1 -0
- package/dist/tools/office/office-client.d.ts +196 -0
- package/dist/tools/office/office-client.d.ts.map +1 -0
- package/dist/tools/office/office-client.js +200 -0
- package/dist/tools/office/office-client.js.map +1 -0
- package/dist/tools/office/powerpoint-client.d.ts +155 -0
- package/dist/tools/office/powerpoint-client.d.ts.map +1 -0
- package/dist/tools/office/powerpoint-client.js +1359 -0
- package/dist/tools/office/powerpoint-client.js.map +1 -0
- package/dist/tools/office/powerpoint-tools/effects.d.ts +9 -0
- package/dist/tools/office/powerpoint-tools/effects.d.ts.map +1 -0
- package/dist/tools/office/powerpoint-tools/effects.js +259 -0
- package/dist/tools/office/powerpoint-tools/effects.js.map +1 -0
- package/dist/tools/office/powerpoint-tools/export.d.ts +7 -0
- package/dist/tools/office/powerpoint-tools/export.d.ts.map +1 -0
- package/dist/tools/office/powerpoint-tools/export.js +151 -0
- package/dist/tools/office/powerpoint-tools/export.js.map +1 -0
- package/dist/tools/office/powerpoint-tools/index.d.ts +13 -0
- package/dist/tools/office/powerpoint-tools/index.d.ts.map +1 -0
- package/dist/tools/office/powerpoint-tools/index.js +33 -0
- package/dist/tools/office/powerpoint-tools/index.js.map +1 -0
- package/dist/tools/office/powerpoint-tools/launch.d.ts +9 -0
- package/dist/tools/office/powerpoint-tools/launch.d.ts.map +1 -0
- package/dist/tools/office/powerpoint-tools/launch.js +214 -0
- package/dist/tools/office/powerpoint-tools/launch.js.map +1 -0
- package/dist/tools/office/powerpoint-tools/media.d.ts +8 -0
- package/dist/tools/office/powerpoint-tools/media.d.ts.map +1 -0
- package/dist/tools/office/powerpoint-tools/media.js +221 -0
- package/dist/tools/office/powerpoint-tools/media.js.map +1 -0
- package/dist/tools/office/powerpoint-tools/notes.d.ts +8 -0
- package/dist/tools/office/powerpoint-tools/notes.d.ts.map +1 -0
- package/dist/tools/office/powerpoint-tools/notes.js +181 -0
- package/dist/tools/office/powerpoint-tools/notes.js.map +1 -0
- package/dist/tools/office/powerpoint-tools/sections.d.ts +6 -0
- package/dist/tools/office/powerpoint-tools/sections.d.ts.map +1 -0
- package/dist/tools/office/powerpoint-tools/sections.js +111 -0
- package/dist/tools/office/powerpoint-tools/sections.js.map +1 -0
- package/dist/tools/office/powerpoint-tools/shapes.d.ts +24 -0
- package/dist/tools/office/powerpoint-tools/shapes.d.ts.map +1 -0
- package/dist/tools/office/powerpoint-tools/shapes.js +817 -0
- package/dist/tools/office/powerpoint-tools/shapes.js.map +1 -0
- package/dist/tools/office/powerpoint-tools/slides.d.ts +15 -0
- package/dist/tools/office/powerpoint-tools/slides.d.ts.map +1 -0
- package/dist/tools/office/powerpoint-tools/slides.js +447 -0
- package/dist/tools/office/powerpoint-tools/slides.js.map +1 -0
- package/dist/tools/office/powerpoint-tools/tables.d.ts +12 -0
- package/dist/tools/office/powerpoint-tools/tables.d.ts.map +1 -0
- package/dist/tools/office/powerpoint-tools/tables.js +362 -0
- package/dist/tools/office/powerpoint-tools/tables.js.map +1 -0
- package/dist/tools/office/powerpoint-tools/text.d.ts +13 -0
- package/dist/tools/office/powerpoint-tools/text.d.ts.map +1 -0
- package/dist/tools/office/powerpoint-tools/text.js +428 -0
- package/dist/tools/office/powerpoint-tools/text.js.map +1 -0
- package/dist/tools/office/powerpoint-tools.d.ts +3 -0
- package/dist/tools/office/powerpoint-tools.d.ts.map +1 -0
- package/dist/tools/office/powerpoint-tools.js +3 -0
- package/dist/tools/office/powerpoint-tools.js.map +1 -0
- package/dist/tools/office/word-client.d.ts +147 -0
- package/dist/tools/office/word-client.d.ts.map +1 -0
- package/dist/tools/office/word-client.js +1341 -0
- package/dist/tools/office/word-client.js.map +1 -0
- package/dist/tools/office/word-tools/bookmarks.d.ts +7 -0
- package/dist/tools/office/word-tools/bookmarks.d.ts.map +1 -0
- package/dist/tools/office/word-tools/bookmarks.js +146 -0
- package/dist/tools/office/word-tools/bookmarks.js.map +1 -0
- package/dist/tools/office/word-tools/comments.d.ts +7 -0
- package/dist/tools/office/word-tools/comments.d.ts.map +1 -0
- package/dist/tools/office/word-tools/comments.js +146 -0
- package/dist/tools/office/word-tools/comments.js.map +1 -0
- package/dist/tools/office/word-tools/content.d.ts +7 -0
- package/dist/tools/office/word-tools/content.d.ts.map +1 -0
- package/dist/tools/office/word-tools/content.js +168 -0
- package/dist/tools/office/word-tools/content.js.map +1 -0
- package/dist/tools/office/word-tools/export.d.ts +5 -0
- package/dist/tools/office/word-tools/export.d.ts.map +1 -0
- package/dist/tools/office/word-tools/export.js +73 -0
- package/dist/tools/office/word-tools/export.js.map +1 -0
- package/dist/tools/office/word-tools/find.d.ts +5 -0
- package/dist/tools/office/word-tools/find.d.ts.map +1 -0
- package/dist/tools/office/word-tools/find.js +106 -0
- package/dist/tools/office/word-tools/find.js.map +1 -0
- package/dist/tools/office/word-tools/footnotes.d.ts +9 -0
- package/dist/tools/office/word-tools/footnotes.d.ts.map +1 -0
- package/dist/tools/office/word-tools/footnotes.js +227 -0
- package/dist/tools/office/word-tools/footnotes.js.map +1 -0
- package/dist/tools/office/word-tools/formatting.d.ts +6 -0
- package/dist/tools/office/word-tools/formatting.d.ts.map +1 -0
- package/dist/tools/office/word-tools/formatting.js +129 -0
- package/dist/tools/office/word-tools/formatting.js.map +1 -0
- package/dist/tools/office/word-tools/headers-footers.d.ts +6 -0
- package/dist/tools/office/word-tools/headers-footers.d.ts.map +1 -0
- package/dist/tools/office/word-tools/headers-footers.js +117 -0
- package/dist/tools/office/word-tools/headers-footers.js.map +1 -0
- package/dist/tools/office/word-tools/index.d.ts +22 -0
- package/dist/tools/office/word-tools/index.d.ts.map +1 -0
- package/dist/tools/office/word-tools/index.js +63 -0
- package/dist/tools/office/word-tools/index.js.map +1 -0
- package/dist/tools/office/word-tools/launch.d.ts +10 -0
- package/dist/tools/office/word-tools/launch.d.ts.map +1 -0
- package/dist/tools/office/word-tools/launch.js +255 -0
- package/dist/tools/office/word-tools/launch.js.map +1 -0
- package/dist/tools/office/word-tools/lists.d.ts +5 -0
- package/dist/tools/office/word-tools/lists.d.ts.map +1 -0
- package/dist/tools/office/word-tools/lists.js +73 -0
- package/dist/tools/office/word-tools/lists.js.map +1 -0
- package/dist/tools/office/word-tools/navigation.d.ts +5 -0
- package/dist/tools/office/word-tools/navigation.d.ts.map +1 -0
- package/dist/tools/office/word-tools/navigation.js +85 -0
- package/dist/tools/office/word-tools/navigation.js.map +1 -0
- package/dist/tools/office/word-tools/page-setup.d.ts +7 -0
- package/dist/tools/office/word-tools/page-setup.d.ts.map +1 -0
- package/dist/tools/office/word-tools/page-setup.js +152 -0
- package/dist/tools/office/word-tools/page-setup.js.map +1 -0
- package/dist/tools/office/word-tools/selection.d.ts +8 -0
- package/dist/tools/office/word-tools/selection.d.ts.map +1 -0
- package/dist/tools/office/word-tools/selection.js +193 -0
- package/dist/tools/office/word-tools/selection.js.map +1 -0
- package/dist/tools/office/word-tools/tables-advanced.d.ts +8 -0
- package/dist/tools/office/word-tools/tables-advanced.d.ts.map +1 -0
- package/dist/tools/office/word-tools/tables-advanced.js +190 -0
- package/dist/tools/office/word-tools/tables-advanced.js.map +1 -0
- package/dist/tools/office/word-tools/tables.d.ts +8 -0
- package/dist/tools/office/word-tools/tables.d.ts.map +1 -0
- package/dist/tools/office/word-tools/tables.js +197 -0
- package/dist/tools/office/word-tools/tables.js.map +1 -0
- package/dist/tools/office/word-tools/text.d.ts +9 -0
- package/dist/tools/office/word-tools/text.d.ts.map +1 -0
- package/dist/tools/office/word-tools/text.js +235 -0
- package/dist/tools/office/word-tools/text.js.map +1 -0
- package/dist/tools/office/word-tools/toc.d.ts +6 -0
- package/dist/tools/office/word-tools/toc.d.ts.map +1 -0
- package/dist/tools/office/word-tools/toc.js +114 -0
- package/dist/tools/office/word-tools/toc.js.map +1 -0
- package/dist/tools/office/word-tools/track-changes.d.ts +8 -0
- package/dist/tools/office/word-tools/track-changes.d.ts.map +1 -0
- package/dist/tools/office/word-tools/track-changes.js +195 -0
- package/dist/tools/office/word-tools/track-changes.js.map +1 -0
- package/dist/tools/office/word-tools/undo-redo.d.ts +5 -0
- package/dist/tools/office/word-tools/undo-redo.d.ts.map +1 -0
- package/dist/tools/office/word-tools/undo-redo.js +73 -0
- package/dist/tools/office/word-tools/undo-redo.js.map +1 -0
- package/dist/tools/office/word-tools/watermarks.d.ts +5 -0
- package/dist/tools/office/word-tools/watermarks.d.ts.map +1 -0
- package/dist/tools/office/word-tools/watermarks.js +81 -0
- package/dist/tools/office/word-tools/watermarks.js.map +1 -0
- package/dist/tools/office/word-tools.d.ts +3 -0
- package/dist/tools/office/word-tools.d.ts.map +1 -0
- package/dist/tools/office/word-tools.js +3 -0
- package/dist/tools/office/word-tools.js.map +1 -0
- package/dist/tools/registry.d.ts +53 -0
- package/dist/tools/registry.d.ts.map +1 -0
- package/dist/tools/registry.js +282 -0
- package/dist/tools/registry.js.map +1 -0
- package/dist/tools/types.d.ts +88 -0
- package/dist/tools/types.d.ts.map +1 -0
- package/dist/tools/types.js +19 -0
- package/dist/tools/types.js.map +1 -0
- package/dist/types/index.d.ts +123 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +2 -0
- package/dist/types/index.js.map +1 -0
- package/dist/ui/PlanExecuteView.d.ts +11 -0
- package/dist/ui/PlanExecuteView.d.ts.map +1 -0
- package/dist/ui/PlanExecuteView.js +27 -0
- package/dist/ui/PlanExecuteView.js.map +1 -0
- package/dist/ui/TodoPanel.d.ts +13 -0
- package/dist/ui/TodoPanel.d.ts.map +1 -0
- package/dist/ui/TodoPanel.js +135 -0
- package/dist/ui/TodoPanel.js.map +1 -0
- package/dist/ui/UpdateNotification.d.ts +13 -0
- package/dist/ui/UpdateNotification.d.ts.map +1 -0
- package/dist/ui/UpdateNotification.js +42 -0
- package/dist/ui/UpdateNotification.js.map +1 -0
- package/dist/ui/components/ActivityIndicator.d.ts +25 -0
- package/dist/ui/components/ActivityIndicator.d.ts.map +1 -0
- package/dist/ui/components/ActivityIndicator.js +115 -0
- package/dist/ui/components/ActivityIndicator.js.map +1 -0
- package/dist/ui/components/CommandBrowser.d.ts +10 -0
- package/dist/ui/components/CommandBrowser.d.ts.map +1 -0
- package/dist/ui/components/CommandBrowser.js +53 -0
- package/dist/ui/components/CommandBrowser.js.map +1 -0
- package/dist/ui/components/CustomTextInput.d.ts +13 -0
- package/dist/ui/components/CustomTextInput.d.ts.map +1 -0
- package/dist/ui/components/CustomTextInput.js +245 -0
- package/dist/ui/components/CustomTextInput.js.map +1 -0
- package/dist/ui/components/DocsSearchProgress.d.ts +13 -0
- package/dist/ui/components/DocsSearchProgress.d.ts.map +1 -0
- package/dist/ui/components/DocsSearchProgress.js +37 -0
- package/dist/ui/components/DocsSearchProgress.js.map +1 -0
- package/dist/ui/components/FileBrowser.d.ts +11 -0
- package/dist/ui/components/FileBrowser.d.ts.map +1 -0
- package/dist/ui/components/FileBrowser.js +45 -0
- package/dist/ui/components/FileBrowser.js.map +1 -0
- package/dist/ui/components/LLMSetupWizard.d.ts +8 -0
- package/dist/ui/components/LLMSetupWizard.d.ts.map +1 -0
- package/dist/ui/components/LLMSetupWizard.js +183 -0
- package/dist/ui/components/LLMSetupWizard.js.map +1 -0
- package/dist/ui/components/Logo.d.ts +21 -0
- package/dist/ui/components/Logo.d.ts.map +1 -0
- package/dist/ui/components/Logo.js +110 -0
- package/dist/ui/components/Logo.js.map +1 -0
- package/dist/ui/components/MarkdownRenderer.d.ts +9 -0
- package/dist/ui/components/MarkdownRenderer.d.ts.map +1 -0
- package/dist/ui/components/MarkdownRenderer.js +198 -0
- package/dist/ui/components/MarkdownRenderer.js.map +1 -0
- package/dist/ui/components/ModelSelector.d.ts +8 -0
- package/dist/ui/components/ModelSelector.d.ts.map +1 -0
- package/dist/ui/components/ModelSelector.js +111 -0
- package/dist/ui/components/ModelSelector.js.map +1 -0
- package/dist/ui/components/PlanExecuteApp.d.ts +23 -0
- package/dist/ui/components/PlanExecuteApp.d.ts.map +1 -0
- package/dist/ui/components/PlanExecuteApp.js +1433 -0
- package/dist/ui/components/PlanExecuteApp.js.map +1 -0
- package/dist/ui/components/ProgressBar.d.ts +10 -0
- package/dist/ui/components/ProgressBar.d.ts.map +1 -0
- package/dist/ui/components/ProgressBar.js +26 -0
- package/dist/ui/components/ProgressBar.js.map +1 -0
- package/dist/ui/components/StatusBar.d.ts +23 -0
- package/dist/ui/components/StatusBar.d.ts.map +1 -0
- package/dist/ui/components/StatusBar.js +162 -0
- package/dist/ui/components/StatusBar.js.map +1 -0
- package/dist/ui/components/ThinkingIndicator.d.ts +14 -0
- package/dist/ui/components/ThinkingIndicator.d.ts.map +1 -0
- package/dist/ui/components/ThinkingIndicator.js +63 -0
- package/dist/ui/components/ThinkingIndicator.js.map +1 -0
- package/dist/ui/components/TodoListView.d.ts +11 -0
- package/dist/ui/components/TodoListView.d.ts.map +1 -0
- package/dist/ui/components/TodoListView.js +69 -0
- package/dist/ui/components/TodoListView.js.map +1 -0
- package/dist/ui/components/ToolSelector.d.ts +7 -0
- package/dist/ui/components/ToolSelector.d.ts.map +1 -0
- package/dist/ui/components/ToolSelector.js +112 -0
- package/dist/ui/components/ToolSelector.js.map +1 -0
- package/dist/ui/components/dialogs/ApprovalDialog.d.ts +13 -0
- package/dist/ui/components/dialogs/ApprovalDialog.d.ts.map +1 -0
- package/dist/ui/components/dialogs/ApprovalDialog.js +173 -0
- package/dist/ui/components/dialogs/ApprovalDialog.js.map +1 -0
- package/dist/ui/components/dialogs/AskUserDialog.d.ts +9 -0
- package/dist/ui/components/dialogs/AskUserDialog.d.ts.map +1 -0
- package/dist/ui/components/dialogs/AskUserDialog.js +111 -0
- package/dist/ui/components/dialogs/AskUserDialog.js.map +1 -0
- package/dist/ui/components/dialogs/DocsBrowser.d.ts +8 -0
- package/dist/ui/components/dialogs/DocsBrowser.d.ts.map +1 -0
- package/dist/ui/components/dialogs/DocsBrowser.js +127 -0
- package/dist/ui/components/dialogs/DocsBrowser.js.map +1 -0
- package/dist/ui/components/dialogs/SettingsDialog.d.ts +10 -0
- package/dist/ui/components/dialogs/SettingsDialog.d.ts.map +1 -0
- package/dist/ui/components/dialogs/SettingsDialog.js +563 -0
- package/dist/ui/components/dialogs/SettingsDialog.js.map +1 -0
- package/dist/ui/components/dialogs/index.d.ts +4 -0
- package/dist/ui/components/dialogs/index.d.ts.map +1 -0
- package/dist/ui/components/dialogs/index.js +4 -0
- package/dist/ui/components/dialogs/index.js.map +1 -0
- package/dist/ui/components/index.d.ts +12 -0
- package/dist/ui/components/index.d.ts.map +1 -0
- package/dist/ui/components/index.js +9 -0
- package/dist/ui/components/index.js.map +1 -0
- package/dist/ui/components/panels/LogPanel.d.ts +7 -0
- package/dist/ui/components/panels/LogPanel.d.ts.map +1 -0
- package/dist/ui/components/panels/LogPanel.js +280 -0
- package/dist/ui/components/panels/LogPanel.js.map +1 -0
- package/dist/ui/components/panels/SessionPanel.d.ts +8 -0
- package/dist/ui/components/panels/SessionPanel.d.ts.map +1 -0
- package/dist/ui/components/panels/SessionPanel.js +81 -0
- package/dist/ui/components/panels/SessionPanel.js.map +1 -0
- package/dist/ui/components/panels/index.d.ts +4 -0
- package/dist/ui/components/panels/index.d.ts.map +1 -0
- package/dist/ui/components/panels/index.js +4 -0
- package/dist/ui/components/panels/index.js.map +1 -0
- package/dist/ui/components/views/ChatView.d.ts +12 -0
- package/dist/ui/components/views/ChatView.d.ts.map +1 -0
- package/dist/ui/components/views/ChatView.js +289 -0
- package/dist/ui/components/views/ChatView.js.map +1 -0
- package/dist/ui/components/views/index.d.ts +2 -0
- package/dist/ui/components/views/index.d.ts.map +1 -0
- package/dist/ui/components/views/index.js +2 -0
- package/dist/ui/components/views/index.js.map +1 -0
- package/dist/ui/contexts/TokenContext.d.ts +29 -0
- package/dist/ui/contexts/TokenContext.d.ts.map +1 -0
- package/dist/ui/contexts/TokenContext.js +79 -0
- package/dist/ui/contexts/TokenContext.js.map +1 -0
- package/dist/ui/hooks/atFileProcessor.d.ts +15 -0
- package/dist/ui/hooks/atFileProcessor.d.ts.map +1 -0
- package/dist/ui/hooks/atFileProcessor.js +88 -0
- package/dist/ui/hooks/atFileProcessor.js.map +1 -0
- package/dist/ui/hooks/index.d.ts +8 -0
- package/dist/ui/hooks/index.d.ts.map +1 -0
- package/dist/ui/hooks/index.js +8 -0
- package/dist/ui/hooks/index.js.map +1 -0
- package/dist/ui/hooks/slashCommandProcessor.d.ts +21 -0
- package/dist/ui/hooks/slashCommandProcessor.d.ts.map +1 -0
- package/dist/ui/hooks/slashCommandProcessor.js +100 -0
- package/dist/ui/hooks/slashCommandProcessor.js.map +1 -0
- package/dist/ui/hooks/useCommandBrowserState.d.ts +12 -0
- package/dist/ui/hooks/useCommandBrowserState.d.ts.map +1 -0
- package/dist/ui/hooks/useCommandBrowserState.js +66 -0
- package/dist/ui/hooks/useCommandBrowserState.js.map +1 -0
- package/dist/ui/hooks/useFileBrowserState.d.ts +15 -0
- package/dist/ui/hooks/useFileBrowserState.d.ts.map +1 -0
- package/dist/ui/hooks/useFileBrowserState.js +80 -0
- package/dist/ui/hooks/useFileBrowserState.js.map +1 -0
- package/dist/ui/hooks/useFileList.d.ts +20 -0
- package/dist/ui/hooks/useFileList.d.ts.map +1 -0
- package/dist/ui/hooks/useFileList.js +57 -0
- package/dist/ui/hooks/useFileList.js.map +1 -0
- package/dist/ui/hooks/useInputHistory.d.ts +9 -0
- package/dist/ui/hooks/useInputHistory.d.ts.map +1 -0
- package/dist/ui/hooks/useInputHistory.js +68 -0
- package/dist/ui/hooks/useInputHistory.js.map +1 -0
- package/dist/ui/hooks/usePlanExecution.d.ts +8 -0
- package/dist/ui/hooks/usePlanExecution.d.ts.map +1 -0
- package/dist/ui/hooks/usePlanExecution.js +208 -0
- package/dist/ui/hooks/usePlanExecution.js.map +1 -0
- package/dist/ui/index.d.ts +7 -0
- package/dist/ui/index.d.ts.map +1 -0
- package/dist/ui/index.js +7 -0
- package/dist/ui/index.js.map +1 -0
- package/dist/ui/ink-entry.d.ts +3 -0
- package/dist/ui/ink-entry.d.ts.map +1 -0
- package/dist/ui/ink-entry.js +22 -0
- package/dist/ui/ink-entry.js.map +1 -0
- package/dist/utils/file-system.d.ts +9 -0
- package/dist/utils/file-system.d.ts.map +1 -0
- package/dist/utils/file-system.js +99 -0
- package/dist/utils/file-system.js.map +1 -0
- package/dist/utils/git-utils.d.ts +2 -0
- package/dist/utils/git-utils.d.ts.map +1 -0
- package/dist/utils/git-utils.js +16 -0
- package/dist/utils/git-utils.js.map +1 -0
- package/dist/utils/json-stream-logger.d.ts +74 -0
- package/dist/utils/json-stream-logger.d.ts.map +1 -0
- package/dist/utils/json-stream-logger.js +808 -0
- package/dist/utils/json-stream-logger.js.map +1 -0
- package/dist/utils/logger.d.ts +152 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +1672 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/platform-utils.d.ts +19 -0
- package/dist/utils/platform-utils.d.ts.map +1 -0
- package/dist/utils/platform-utils.js +134 -0
- package/dist/utils/platform-utils.js.map +1 -0
- package/dist/utils/wsl-utils.d.ts +4 -0
- package/dist/utils/wsl-utils.d.ts.map +1 -0
- package/dist/utils/wsl-utils.js +72 -0
- package/dist/utils/wsl-utils.js.map +1 -0
- package/package.json +148 -0
- package/scripts/patch-yoga.js +48 -0
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { Message, TodoItem } from '../types/index.js';
|
|
2
|
+
import { LLMClient } from '../core/llm/llm-client.js';
|
|
3
|
+
import { CompactResult } from '../core/compact/index.js';
|
|
4
|
+
export type ExecutionPhase = 'idle' | 'planning' | 'executing' | 'compacting';
|
|
5
|
+
export interface PlanExecutionState {
|
|
6
|
+
todos: TodoItem[];
|
|
7
|
+
currentTodoId: string | undefined;
|
|
8
|
+
executionPhase: ExecutionPhase;
|
|
9
|
+
isInterrupted: boolean;
|
|
10
|
+
currentActivity: string;
|
|
11
|
+
}
|
|
12
|
+
export interface AskUserRequest {
|
|
13
|
+
question: string;
|
|
14
|
+
options: string[];
|
|
15
|
+
}
|
|
16
|
+
export interface AskUserResponse {
|
|
17
|
+
selectedOption: string;
|
|
18
|
+
isOther: boolean;
|
|
19
|
+
customText?: string;
|
|
20
|
+
}
|
|
21
|
+
export interface AskUserState {
|
|
22
|
+
askUserRequest: AskUserRequest | null;
|
|
23
|
+
}
|
|
24
|
+
export interface StateCallbacks {
|
|
25
|
+
setTodos: (todos: TodoItem[] | ((prev: TodoItem[]) => TodoItem[])) => void;
|
|
26
|
+
setCurrentTodoId: (id: string | undefined | ((prev: string | undefined) => string | undefined)) => void;
|
|
27
|
+
setExecutionPhase: (phase: ExecutionPhase) => void;
|
|
28
|
+
setIsInterrupted: (interrupted: boolean) => void;
|
|
29
|
+
setCurrentActivity: (activity: string) => void;
|
|
30
|
+
setMessages: (messages: Message[] | ((prev: Message[]) => Message[])) => void;
|
|
31
|
+
setAskUserRequest: (request: AskUserRequest | null) => void;
|
|
32
|
+
getPendingMessage?: () => string | null;
|
|
33
|
+
clearPendingMessage?: () => void;
|
|
34
|
+
}
|
|
35
|
+
export interface ExecutionContext {
|
|
36
|
+
llmClient: LLMClient;
|
|
37
|
+
messages: Message[];
|
|
38
|
+
todos: TodoItem[];
|
|
39
|
+
isInterruptedRef: {
|
|
40
|
+
current: boolean;
|
|
41
|
+
};
|
|
42
|
+
callbacks: StateCallbacks;
|
|
43
|
+
}
|
|
44
|
+
export interface ExecutionResult {
|
|
45
|
+
success: boolean;
|
|
46
|
+
messages: Message[];
|
|
47
|
+
error?: string;
|
|
48
|
+
}
|
|
49
|
+
export interface PlanExecutionActions {
|
|
50
|
+
setTodos: (todos: TodoItem[] | ((prev: TodoItem[]) => TodoItem[])) => void;
|
|
51
|
+
handleTodoUpdate: (todo: TodoItem) => void;
|
|
52
|
+
handleAskUserResponse: (response: AskUserResponse) => void;
|
|
53
|
+
handleInterrupt: () => 'paused' | 'stopped' | 'none';
|
|
54
|
+
executeAutoMode: (userMessage: string, llmClient: LLMClient, messages: Message[], setMessages: (messages: Message[] | ((prev: Message[]) => Message[])) => void) => Promise<void>;
|
|
55
|
+
executePlanMode: (userMessage: string, llmClient: LLMClient, messages: Message[], setMessages: (messages: Message[] | ((prev: Message[]) => Message[])) => void) => Promise<void>;
|
|
56
|
+
resumeTodoExecution: (userMessage: string, llmClient: LLMClient, messages: Message[], setMessages: (messages: Message[] | ((prev: Message[]) => Message[])) => void) => Promise<void>;
|
|
57
|
+
performCompact: (llmClient: LLMClient, messages: Message[], setMessages: (messages: Message[] | ((prev: Message[]) => Message[])) => void) => Promise<CompactResult>;
|
|
58
|
+
shouldAutoCompact: () => boolean;
|
|
59
|
+
getContextRemainingPercent: () => number;
|
|
60
|
+
getContextUsageInfo: () => {
|
|
61
|
+
tokens: number;
|
|
62
|
+
percent: number;
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/orchestration/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/orchestration/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { TodoItem } from '../types/index.js';
|
|
2
|
+
export declare function formatErrorMessage(error: unknown): string;
|
|
3
|
+
export declare function buildTodoContext(todos: TodoItem[]): string;
|
|
4
|
+
export declare function areAllTodosCompleted(todos: TodoItem[]): boolean;
|
|
5
|
+
export declare function findActiveTodo(todos: TodoItem[]): TodoItem | undefined;
|
|
6
|
+
export declare function getTodoStats(todos: TodoItem[]): {
|
|
7
|
+
total: number;
|
|
8
|
+
completed: number;
|
|
9
|
+
failed: number;
|
|
10
|
+
pending: number;
|
|
11
|
+
inProgress: number;
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/orchestration/utils.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAO7C,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAuCzD;AAMD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,MAAM,CA4B1D;AAMD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,OAAO,CAE/D;AAKD,wBAAgB,cAAc,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,QAAQ,GAAG,SAAS,CAEtE;AAKD,wBAAgB,YAAY,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG;IAC/C,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACpB,CAQA"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { BaseError } from '../errors/base.js';
|
|
2
|
+
import { logger } from '../utils/logger.js';
|
|
3
|
+
export function formatErrorMessage(error) {
|
|
4
|
+
logger.enter('formatErrorMessage');
|
|
5
|
+
if (error instanceof BaseError) {
|
|
6
|
+
let message = `❌ ${error.getUserMessage()}\n`;
|
|
7
|
+
message += `\n📋 Error Code: ${error.code}`;
|
|
8
|
+
if (error.details && Object.keys(error.details).length > 0) {
|
|
9
|
+
message += `\n\n🔍 Details:`;
|
|
10
|
+
for (const [key, value] of Object.entries(error.details)) {
|
|
11
|
+
if (key === 'fullError')
|
|
12
|
+
continue;
|
|
13
|
+
if (typeof value === 'object') {
|
|
14
|
+
message += `\n • ${key}: ${JSON.stringify(value, null, 2)}`;
|
|
15
|
+
}
|
|
16
|
+
else {
|
|
17
|
+
message += `\n • ${key}: ${value}`;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
if (error.isRecoverable) {
|
|
22
|
+
message += `\n\n💡 이 오류는 복구 가능합니다. 다시 시도해보세요.`;
|
|
23
|
+
}
|
|
24
|
+
message += `\n\n🕐 시간: ${error.timestamp.toLocaleString('ko-KR')}`;
|
|
25
|
+
logger.exit('formatErrorMessage', { isBaseError: true });
|
|
26
|
+
return message;
|
|
27
|
+
}
|
|
28
|
+
if (error instanceof Error) {
|
|
29
|
+
let message = `❌ Error: ${error.message}\n`;
|
|
30
|
+
if (error.stack) {
|
|
31
|
+
message += `\n📚 Stack Trace:\n${error.stack}`;
|
|
32
|
+
}
|
|
33
|
+
logger.exit('formatErrorMessage', { isError: true });
|
|
34
|
+
return message;
|
|
35
|
+
}
|
|
36
|
+
logger.exit('formatErrorMessage', { isUnknown: true });
|
|
37
|
+
return `❌ Unknown Error: ${String(error)}`;
|
|
38
|
+
}
|
|
39
|
+
export function buildTodoContext(todos) {
|
|
40
|
+
if (todos.length === 0)
|
|
41
|
+
return '';
|
|
42
|
+
const completedCount = todos.filter(t => t.status === 'completed').length;
|
|
43
|
+
const inProgressCount = todos.filter(t => t.status === 'in_progress').length;
|
|
44
|
+
const pendingCount = todos.filter(t => t.status === 'pending').length;
|
|
45
|
+
const todoList = todos.map((todo, idx) => {
|
|
46
|
+
const statusIcon = todo.status === 'completed' ? '✅' :
|
|
47
|
+
todo.status === 'in_progress' ? '🔄' :
|
|
48
|
+
todo.status === 'failed' ? '❌' : '⏳';
|
|
49
|
+
return `${idx + 1}. ${statusIcon} [${todo.status.toUpperCase()}] ${todo.title}`;
|
|
50
|
+
}).join('\n');
|
|
51
|
+
return `
|
|
52
|
+
---
|
|
53
|
+
## 📋 Current TODO List (${completedCount}/${todos.length} completed)
|
|
54
|
+
|
|
55
|
+
${todoList}
|
|
56
|
+
|
|
57
|
+
${pendingCount > 0 || inProgressCount > 0
|
|
58
|
+
? `**⚠️ CRITICAL: You MUST use write_todos tool to update TODO status.**
|
|
59
|
+
- When starting a task: call write_todos with status "in_progress"
|
|
60
|
+
- When completing a task: call write_todos with status "completed"
|
|
61
|
+
- Do NOT skip calling write_todos - execution will stall without it.
|
|
62
|
+
- After finishing current in_progress task, immediately mark it completed and start next pending task.`
|
|
63
|
+
: '**All TODOs are completed! Provide a brief summary of what was accomplished.**'}
|
|
64
|
+
---`;
|
|
65
|
+
}
|
|
66
|
+
export function areAllTodosCompleted(todos) {
|
|
67
|
+
return todos.every(t => t.status === 'completed' || t.status === 'failed');
|
|
68
|
+
}
|
|
69
|
+
export function findActiveTodo(todos) {
|
|
70
|
+
return todos.find(t => t.status === 'in_progress') || todos.find(t => t.status === 'pending');
|
|
71
|
+
}
|
|
72
|
+
export function getTodoStats(todos) {
|
|
73
|
+
return {
|
|
74
|
+
total: todos.length,
|
|
75
|
+
completed: todos.filter(t => t.status === 'completed').length,
|
|
76
|
+
failed: todos.filter(t => t.status === 'failed').length,
|
|
77
|
+
pending: todos.filter(t => t.status === 'pending').length,
|
|
78
|
+
inProgress: todos.filter(t => t.status === 'in_progress').length,
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/orchestration/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export declare const DOCS_SEARCH_DECISION_PROMPT = "You are a documentation search classifier.\n\n## IMPORTANT: Offline Environment\nThis is an OFFLINE environment with NO external internet access.\nThe ONLY way to get up-to-date information is by searching the local documentation below.\n\n## Available Documentation (depth 1):\n{folder_structure}\n\n## Rules:\n- Answer ONLY \"Yes\" or \"No\" - nothing else\n- Answer \"Yes\" ONLY when BOTH conditions are met:\n 1. The user needs up-to-date or specific information (API docs, framework usage, library features, etc.)\n 2. There is a folder name above that looks relevant to the topic\n- Answer \"No\" if:\n - The question is about general coding/logic that doesn't need docs\n - No folder above seems related to the user's topic\n - The user is asking about this project's own codebase (not external docs)\n- When in doubt, answer \"No\" (avoid unnecessary searches)\n\n## User Message:\n{user_message}\n\nYour Answer (Yes or No):";
|
|
2
|
+
export declare const DOCS_SEARCH_DECISION_RETRY_PROMPT = "Your previous response was not valid. You must answer with exactly \"Yes\" or \"No\".\n\nShould the documentation be searched for this question?\n\nAnswer (Yes or No):";
|
|
3
|
+
export declare function buildDocsSearchDecisionPrompt(folderStructure: string, userMessage: string): string;
|
|
4
|
+
export declare function parseDocsSearchDecision(response: string): boolean | null;
|
|
5
|
+
export default DOCS_SEARCH_DECISION_PROMPT;
|
|
6
|
+
//# sourceMappingURL=docs-search-decision.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docs-search-decision.d.ts","sourceRoot":"","sources":["../../../src/prompts/agents/docs-search-decision.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,2BAA2B,86BAuBf,CAAC;AAK1B,eAAO,MAAM,iCAAiC,4KAI1B,CAAC;AAKrB,wBAAgB,6BAA6B,CAC3C,eAAe,EAAE,MAAM,EACvB,WAAW,EAAE,MAAM,GAClB,MAAM,CAIR;AAMD,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI,CAWxE;AAED,eAAe,2BAA2B,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
export const DOCS_SEARCH_DECISION_PROMPT = `You are a documentation search classifier.
|
|
2
|
+
|
|
3
|
+
## IMPORTANT: Offline Environment
|
|
4
|
+
This is an OFFLINE environment with NO external internet access.
|
|
5
|
+
The ONLY way to get up-to-date information is by searching the local documentation below.
|
|
6
|
+
|
|
7
|
+
## Available Documentation (depth 1):
|
|
8
|
+
{folder_structure}
|
|
9
|
+
|
|
10
|
+
## Rules:
|
|
11
|
+
- Answer ONLY "Yes" or "No" - nothing else
|
|
12
|
+
- Answer "Yes" ONLY when BOTH conditions are met:
|
|
13
|
+
1. The user needs up-to-date or specific information (API docs, framework usage, library features, etc.)
|
|
14
|
+
2. There is a folder name above that looks relevant to the topic
|
|
15
|
+
- Answer "No" if:
|
|
16
|
+
- The question is about general coding/logic that doesn't need docs
|
|
17
|
+
- No folder above seems related to the user's topic
|
|
18
|
+
- The user is asking about this project's own codebase (not external docs)
|
|
19
|
+
- When in doubt, answer "No" (avoid unnecessary searches)
|
|
20
|
+
|
|
21
|
+
## User Message:
|
|
22
|
+
{user_message}
|
|
23
|
+
|
|
24
|
+
Your Answer (Yes or No):`;
|
|
25
|
+
export const DOCS_SEARCH_DECISION_RETRY_PROMPT = `Your previous response was not valid. You must answer with exactly "Yes" or "No".
|
|
26
|
+
|
|
27
|
+
Should the documentation be searched for this question?
|
|
28
|
+
|
|
29
|
+
Answer (Yes or No):`;
|
|
30
|
+
export function buildDocsSearchDecisionPrompt(folderStructure, userMessage) {
|
|
31
|
+
return DOCS_SEARCH_DECISION_PROMPT
|
|
32
|
+
.replace('{folder_structure}', folderStructure)
|
|
33
|
+
.replace('{user_message}', userMessage);
|
|
34
|
+
}
|
|
35
|
+
export function parseDocsSearchDecision(response) {
|
|
36
|
+
const normalized = response.trim().toLowerCase();
|
|
37
|
+
if (normalized === 'yes' || normalized.startsWith('yes')) {
|
|
38
|
+
return true;
|
|
39
|
+
}
|
|
40
|
+
if (normalized === 'no' || normalized.startsWith('no')) {
|
|
41
|
+
return false;
|
|
42
|
+
}
|
|
43
|
+
return null;
|
|
44
|
+
}
|
|
45
|
+
export default DOCS_SEARCH_DECISION_PROMPT;
|
|
46
|
+
//# sourceMappingURL=docs-search-decision.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docs-search-decision.js","sourceRoot":"","sources":["../../../src/prompts/agents/docs-search-decision.ts"],"names":[],"mappings":"AAUA,MAAM,CAAC,MAAM,2BAA2B,GAAG;;;;;;;;;;;;;;;;;;;;;;;yBAuBlB,CAAC;AAK1B,MAAM,CAAC,MAAM,iCAAiC,GAAG;;;;oBAI7B,CAAC;AAKrB,MAAM,UAAU,6BAA6B,CAC3C,eAAuB,EACvB,WAAmB;IAEnB,OAAO,2BAA2B;SAC/B,OAAO,CAAC,oBAAoB,EAAE,eAAe,CAAC;SAC9C,OAAO,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAC;AAC5C,CAAC;AAMD,MAAM,UAAU,uBAAuB,CAAC,QAAgB;IACtD,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAEjD,IAAI,UAAU,KAAK,KAAK,IAAI,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACzD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,UAAU,KAAK,IAAI,IAAI,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACvD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,eAAe,2BAA2B,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export declare const DOCS_SEARCH_SYSTEM_PROMPT = "You are a documentation search expert. Your task is to find relevant information in ~/.hanseol/docs by navigating its hierarchical folder structure.\n\n## Documentation Structure\n\nThe docs folder is organized hierarchically:\n- **Top-level folders** = Major categories (e.g., agent_framework/, tutorials/, reference/)\n- **Sub-folders** = Specific topics or frameworks (e.g., agno/, langchain/)\n- **Files** = Documentation in markdown format (.md)\n\nNavigate by exploring folder names to understand what's available, then drill down to find relevant content.\n\n## Available Tools\n\n1. **list_directory** - List contents of a folder\n - Use this to explore the folder structure\n - Start from root (\"\") and navigate deeper based on folder names\n\n2. **read_docs_file** - Read entire file content\n - Use after identifying a relevant file\n - Good for smaller files or when you need full context\n\n3. **preview_file** - Read first N lines of a file\n - Use to quickly check if a file is relevant before reading fully\n - Saves time on large documents\n\n4. **tell_to_user** - Send progress update to user\n - Keep the user informed about what you're doing\n - Use for significant progress (found relevant folder, reading important file, etc.)\n\n5. **submit_findings** - Submit final report and terminate\n - Call this when you have gathered enough information\n - This is the ONLY way to complete the search\n - Include summary, detailed findings, and source files\n\n## Search Strategy\n\n1. **Start broad**: List root directory to understand available categories\n2. **Navigate by relevance**: Choose folders whose names match the query topic\n3. **Read multiple files**: Information may be spread across several documents\n4. **Preview before reading**: For large files, preview first to check relevance\n5. **Keep user informed**: Use tell_to_user for significant findings\n6. **Submit when ready**: Call submit_findings when you have enough information\n\n## Important Rules\n\n- **No iteration limit**: Take as many steps as needed to find good information\n- **Be thorough**: Check 2-5 potentially relevant documents when possible\n- **Must call submit_findings**: This is the only way to complete the search\n- **Respond in user's language**: Match the language of the user's query\n\n## Example Flow\n\n1. list_directory(\"\") \u2192 See top-level categories\n2. list_directory(\"agent_framework\") \u2192 Explore relevant category\n3. tell_to_user(\"Found agent_framework folder, exploring...\")\n4. list_directory(\"agent_framework/agno\") \u2192 Drill down\n5. preview_file(\"agent_framework/agno/overview.md\", 30) \u2192 Check relevance\n6. read_docs_file(\"agent_framework/agno/overview.md\") \u2192 Read full content\n7. read_docs_file(\"agent_framework/agno/examples.md\") \u2192 Read related file\n8. submit_findings(summary, findings, sources) \u2192 Complete search\n";
|
|
2
|
+
export declare function buildDocsSearchUserMessage(query: string): string;
|
|
3
|
+
export default DOCS_SEARCH_SYSTEM_PROMPT;
|
|
4
|
+
//# sourceMappingURL=docs-search.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docs-search.d.ts","sourceRoot":"","sources":["../../../src/prompts/agents/docs-search.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,yBAAyB,22FA4DrC,CAAC;AAKF,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAMhE;AAED,eAAe,yBAAyB,CAAC"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
export const DOCS_SEARCH_SYSTEM_PROMPT = `You are a documentation search expert. Your task is to find relevant information in ~/.hanseol/docs by navigating its hierarchical folder structure.
|
|
2
|
+
|
|
3
|
+
## Documentation Structure
|
|
4
|
+
|
|
5
|
+
The docs folder is organized hierarchically:
|
|
6
|
+
- **Top-level folders** = Major categories (e.g., agent_framework/, tutorials/, reference/)
|
|
7
|
+
- **Sub-folders** = Specific topics or frameworks (e.g., agno/, langchain/)
|
|
8
|
+
- **Files** = Documentation in markdown format (.md)
|
|
9
|
+
|
|
10
|
+
Navigate by exploring folder names to understand what's available, then drill down to find relevant content.
|
|
11
|
+
|
|
12
|
+
## Available Tools
|
|
13
|
+
|
|
14
|
+
1. **list_directory** - List contents of a folder
|
|
15
|
+
- Use this to explore the folder structure
|
|
16
|
+
- Start from root ("") and navigate deeper based on folder names
|
|
17
|
+
|
|
18
|
+
2. **read_docs_file** - Read entire file content
|
|
19
|
+
- Use after identifying a relevant file
|
|
20
|
+
- Good for smaller files or when you need full context
|
|
21
|
+
|
|
22
|
+
3. **preview_file** - Read first N lines of a file
|
|
23
|
+
- Use to quickly check if a file is relevant before reading fully
|
|
24
|
+
- Saves time on large documents
|
|
25
|
+
|
|
26
|
+
4. **tell_to_user** - Send progress update to user
|
|
27
|
+
- Keep the user informed about what you're doing
|
|
28
|
+
- Use for significant progress (found relevant folder, reading important file, etc.)
|
|
29
|
+
|
|
30
|
+
5. **submit_findings** - Submit final report and terminate
|
|
31
|
+
- Call this when you have gathered enough information
|
|
32
|
+
- This is the ONLY way to complete the search
|
|
33
|
+
- Include summary, detailed findings, and source files
|
|
34
|
+
|
|
35
|
+
## Search Strategy
|
|
36
|
+
|
|
37
|
+
1. **Start broad**: List root directory to understand available categories
|
|
38
|
+
2. **Navigate by relevance**: Choose folders whose names match the query topic
|
|
39
|
+
3. **Read multiple files**: Information may be spread across several documents
|
|
40
|
+
4. **Preview before reading**: For large files, preview first to check relevance
|
|
41
|
+
5. **Keep user informed**: Use tell_to_user for significant findings
|
|
42
|
+
6. **Submit when ready**: Call submit_findings when you have enough information
|
|
43
|
+
|
|
44
|
+
## Important Rules
|
|
45
|
+
|
|
46
|
+
- **No iteration limit**: Take as many steps as needed to find good information
|
|
47
|
+
- **Be thorough**: Check 2-5 potentially relevant documents when possible
|
|
48
|
+
- **Must call submit_findings**: This is the only way to complete the search
|
|
49
|
+
- **Respond in user's language**: Match the language of the user's query
|
|
50
|
+
|
|
51
|
+
## Example Flow
|
|
52
|
+
|
|
53
|
+
1. list_directory("") → See top-level categories
|
|
54
|
+
2. list_directory("agent_framework") → Explore relevant category
|
|
55
|
+
3. tell_to_user("Found agent_framework folder, exploring...")
|
|
56
|
+
4. list_directory("agent_framework/agno") → Drill down
|
|
57
|
+
5. preview_file("agent_framework/agno/overview.md", 30) → Check relevance
|
|
58
|
+
6. read_docs_file("agent_framework/agno/overview.md") → Read full content
|
|
59
|
+
7. read_docs_file("agent_framework/agno/examples.md") → Read related file
|
|
60
|
+
8. submit_findings(summary, findings, sources) → Complete search
|
|
61
|
+
`;
|
|
62
|
+
export function buildDocsSearchUserMessage(query) {
|
|
63
|
+
return `Find information about the following topic in the documentation:
|
|
64
|
+
|
|
65
|
+
${query}
|
|
66
|
+
|
|
67
|
+
Start by listing the root directory to understand the available documentation structure.`;
|
|
68
|
+
}
|
|
69
|
+
export default DOCS_SEARCH_SYSTEM_PROMPT;
|
|
70
|
+
//# sourceMappingURL=docs-search.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docs-search.js","sourceRoot":"","sources":["../../../src/prompts/agents/docs-search.ts"],"names":[],"mappings":"AAUA,MAAM,CAAC,MAAM,yBAAyB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4DxC,CAAC;AAKF,MAAM,UAAU,0BAA0B,CAAC,KAAa;IACtD,OAAO;;EAEP,KAAK;;yFAEkF,CAAC;AAC1F,CAAC;AAED,eAAe,yBAAyB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"planning.d.ts","sourceRoot":"","sources":["../../../src/prompts/agents/planning.ts"],"names":[],"mappings":"AA2KA,wBAAgB,yBAAyB,CAAC,WAAW,EAAE,MAAM,EAAE,iBAAiB,GAAE,MAAW,GAAG,MAAM,CAarG;AAMD,eAAO,MAAM,sBAAsB,QAWlC,CAAC;AAEF,eAAe,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
import { LANGUAGE_PRIORITY_SHORT } from '../shared/language-rules.js';
|
|
2
|
+
const PLANNING_BASE_PROMPT = `You are a **Planning Agent** that creates task lists for a powerful Execution Agent.
|
|
3
|
+
|
|
4
|
+
${LANGUAGE_PRIORITY_SHORT}
|
|
5
|
+
|
|
6
|
+
## YOUR ROLE
|
|
7
|
+
|
|
8
|
+
You are the **planner**, NOT the executor. Your job is to:
|
|
9
|
+
- **Understand** the user's requirements precisely
|
|
10
|
+
- **Clarify** ambiguous requests before planning
|
|
11
|
+
- **Create** a comprehensive TODO list for the Execution Agent
|
|
12
|
+
|
|
13
|
+
The **Execution Agent** (not you) has powerful capabilities:
|
|
14
|
+
- Execute ANY bash command (git, npm, python, docker, etc.)
|
|
15
|
+
- Read, create, edit, delete ANY files on the system
|
|
16
|
+
- Run builds, tests, deployments, and any workflow
|
|
17
|
+
- Browser automation, office document editing (if enabled)
|
|
18
|
+
- Access and control applications just like the user can
|
|
19
|
+
|
|
20
|
+
Since the Execution Agent can do almost anything a computer user can do, your job is to plan tasks that fully utilize its capabilities.
|
|
21
|
+
|
|
22
|
+
## YOUR MISSION
|
|
23
|
+
|
|
24
|
+
**Plan tasks so the Execution Agent can DO THE USER'S ENTIRE JOB, not just provide guidance or examples.**
|
|
25
|
+
|
|
26
|
+
- The user is using this system to get REAL WORK done
|
|
27
|
+
- Understand the user's actual working environment and context
|
|
28
|
+
- Create TODO lists that COMPLETE the work, not demonstrate how to do it
|
|
29
|
+
- Never plan for POC, examples, or partial solutions unless explicitly requested
|
|
30
|
+
|
|
31
|
+
## YOUR TOOLS
|
|
32
|
+
|
|
33
|
+
You have exactly THREE tools available:
|
|
34
|
+
|
|
35
|
+
⚠️ **CRITICAL**: You may see other tools (like 'write_todos', 'read_file', 'bash') in conversation history.
|
|
36
|
+
Those are for the **Execution LLM**, NOT for you. You only have the 3 tools below.
|
|
37
|
+
|
|
38
|
+
### 1. ask_to_user (CLARIFICATION - USE FIRST IF NEEDED)
|
|
39
|
+
**Use this BEFORE creating TODOs when requirements are unclear.**
|
|
40
|
+
|
|
41
|
+
When to use:
|
|
42
|
+
- The request is vague or ambiguous
|
|
43
|
+
- Multiple interpretations are possible
|
|
44
|
+
- Critical decisions need user input (e.g., which approach to take)
|
|
45
|
+
- You need to understand the user's environment or constraints
|
|
46
|
+
- Missing information that affects how tasks should be done
|
|
47
|
+
|
|
48
|
+
You can call ask_to_user MULTIPLE TIMES to gather all necessary information.
|
|
49
|
+
**It's better to ask 3 questions and do it right than to guess and do it wrong.**
|
|
50
|
+
|
|
51
|
+
### 2. create_todos (PLANNING)
|
|
52
|
+
Use this when the request involves ANY action or implementation:
|
|
53
|
+
- Code implementation, modification, or refactoring
|
|
54
|
+
- Bug fixes or debugging
|
|
55
|
+
- File operations (create, edit, delete, move)
|
|
56
|
+
- Running commands (build, test, deploy, install)
|
|
57
|
+
- Git operations (commit, push, branch, merge)
|
|
58
|
+
- Exploring or searching codebase
|
|
59
|
+
- Any task that requires ACTION, not just explanation
|
|
60
|
+
|
|
61
|
+
### 3. respond_to_user (DIRECT RESPONSE)
|
|
62
|
+
Use this ONLY for pure questions that need NO action:
|
|
63
|
+
- Pure knowledge questions (e.g., "What is a React hook?")
|
|
64
|
+
- Simple greetings or casual conversation
|
|
65
|
+
- Conceptual explanations that don't require code/files
|
|
66
|
+
|
|
67
|
+
⚠️ **When in doubt between ask_to_user and create_todos, USE ask_to_user first.**
|
|
68
|
+
⚠️ **When in doubt between create_todos and respond_to_user, USE create_todos.**
|
|
69
|
+
|
|
70
|
+
## CRITICAL RULES
|
|
71
|
+
|
|
72
|
+
### Rule 1: CLARIFY BEFORE PLANNING
|
|
73
|
+
If the user's request has ANY ambiguity:
|
|
74
|
+
- Use ask_to_user to clarify requirements
|
|
75
|
+
- Ask about the user's environment, constraints, or preferences
|
|
76
|
+
- Don't assume - ASK
|
|
77
|
+
|
|
78
|
+
Examples of ambiguity that REQUIRE clarification:
|
|
79
|
+
- "Add authentication" → What type? OAuth? JWT? Session-based?
|
|
80
|
+
- "Fix the bug" → Which bug? What's the expected behavior?
|
|
81
|
+
- "Deploy the app" → Where? AWS? Vercel? Docker?
|
|
82
|
+
- "Make it faster" → Which part? What's the current bottleneck?
|
|
83
|
+
|
|
84
|
+
### Rule 2: COMPLETE THE JOB, NOT A DEMO
|
|
85
|
+
**NEVER respond with POC, examples, or "here's how you could do it" unless explicitly asked.**
|
|
86
|
+
|
|
87
|
+
❌ WRONG: "Here's an example of how to implement login..."
|
|
88
|
+
✅ RIGHT: Create TODOs to actually implement login in the user's project
|
|
89
|
+
|
|
90
|
+
❌ WRONG: "You could use this approach for deployment..."
|
|
91
|
+
✅ RIGHT: Create TODOs to actually deploy the user's application
|
|
92
|
+
|
|
93
|
+
### Rule 3: UNDERSTAND THE CONTEXT
|
|
94
|
+
Before creating TODOs, consider:
|
|
95
|
+
- What is the user's actual project/environment?
|
|
96
|
+
- What files and structure already exist?
|
|
97
|
+
- What is the end goal the user is trying to achieve?
|
|
98
|
+
- What would a human colleague do to complete this job?
|
|
99
|
+
|
|
100
|
+
### Rule 4: NEW REQUEST HANDLING
|
|
101
|
+
When you see "[NEW REQUEST]" in the user message:
|
|
102
|
+
- This is a completely NEW task
|
|
103
|
+
- Ignore previous TODO completions
|
|
104
|
+
- Create fresh TODOs for this new request
|
|
105
|
+
|
|
106
|
+
## GUIDELINES
|
|
107
|
+
|
|
108
|
+
### For ask_to_user:
|
|
109
|
+
1. **Ask specific questions** - Not "what do you want?" but "Which database: PostgreSQL or MongoDB?"
|
|
110
|
+
2. **Provide clear options** - 2-4 distinct choices
|
|
111
|
+
3. **Ask one thing at a time** - Multiple calls are fine
|
|
112
|
+
4. **User's language** - Ask in the same language as the user
|
|
113
|
+
|
|
114
|
+
### For create_todos:
|
|
115
|
+
1. **1-5 high-level TODOs** - Let Execution LLM handle details
|
|
116
|
+
2. **Complete the job** - Not POC or examples
|
|
117
|
+
3. **Actionable titles** - Clear what needs to be done
|
|
118
|
+
4. **Sequential order** - Execution order matters
|
|
119
|
+
5. **User's language** - Write titles in the user's language
|
|
120
|
+
|
|
121
|
+
### For respond_to_user:
|
|
122
|
+
1. **Only for pure knowledge** - No action required
|
|
123
|
+
2. **User's language** - Respond in user's language
|
|
124
|
+
3. **Concise but complete** - Don't be verbose
|
|
125
|
+
|
|
126
|
+
## EXAMPLES
|
|
127
|
+
|
|
128
|
+
**ask_to_user (ambiguous request):**
|
|
129
|
+
User: "Add authentication"
|
|
130
|
+
→ Use ask_to_user: "What type of authentication do you want?" with options: ["JWT token-based", "Session-based", "OAuth (Google/GitHub)", "Other"]
|
|
131
|
+
|
|
132
|
+
**ask_to_user (missing context):**
|
|
133
|
+
User: "Deploy this app"
|
|
134
|
+
→ Use ask_to_user: "Where should I deploy?" with options: ["AWS EC2", "Vercel", "Docker container", "Other"]
|
|
135
|
+
|
|
136
|
+
**create_todos (clear request):**
|
|
137
|
+
User: "Add a forgot password link to the login page"
|
|
138
|
+
→ Use create_todos: ["Find login page component", "Add forgot password link UI", "Connect to password reset page route"]
|
|
139
|
+
|
|
140
|
+
**create_todos (after clarification):**
|
|
141
|
+
User asked for auth → You clarified → User chose "JWT"
|
|
142
|
+
→ Use create_todos: ["Implement JWT authentication middleware", "Create login/signup API endpoints", "Add token storage and refresh logic", "Apply middleware to protected routes"]
|
|
143
|
+
|
|
144
|
+
**respond_to_user (pure knowledge):**
|
|
145
|
+
User: "What's the difference between JWT and session authentication?"
|
|
146
|
+
→ Use respond_to_user with explanation (no action needed)
|
|
147
|
+
|
|
148
|
+
**WRONG vs RIGHT:**
|
|
149
|
+
User: "Write test code for this"
|
|
150
|
+
❌ WRONG: respond_to_user with "Here's an example of how to write tests..."
|
|
151
|
+
✅ RIGHT: ask_to_user "Which part should I write tests for?" or create_todos if context is clear
|
|
152
|
+
`;
|
|
153
|
+
export function buildPlanningSystemPrompt(toolSummary, optionalToolsInfo = '') {
|
|
154
|
+
const toolSection = `
|
|
155
|
+
## Available Tools for Execution LLM
|
|
156
|
+
|
|
157
|
+
The Execution LLM has access to the following tools:
|
|
158
|
+
|
|
159
|
+
${toolSummary}
|
|
160
|
+
${optionalToolsInfo}
|
|
161
|
+
|
|
162
|
+
**Plan tasks that fully leverage these tools to deliver the most complete and professional results possible.**
|
|
163
|
+
`;
|
|
164
|
+
return PLANNING_BASE_PROMPT + toolSection;
|
|
165
|
+
}
|
|
166
|
+
export const PLANNING_SYSTEM_PROMPT = PLANNING_BASE_PROMPT + `
|
|
167
|
+
## Available Tools for Execution LLM
|
|
168
|
+
|
|
169
|
+
The Execution LLM has access to powerful tools including:
|
|
170
|
+
- \`bash\` - Run ANY shell command (git, npm, python, docker, curl, etc.)
|
|
171
|
+
- \`read_file\` / \`create_file\` / \`edit_file\` - Full file system access
|
|
172
|
+
- \`list_files\` / \`find_files\` - Search and explore codebase
|
|
173
|
+
- \`tell_to_user\` - Communicate with user during execution
|
|
174
|
+
- And more...
|
|
175
|
+
|
|
176
|
+
The Execution LLM can do almost anything a computer user can do on this system.
|
|
177
|
+
`;
|
|
178
|
+
export default PLANNING_SYSTEM_PROMPT;
|
|
179
|
+
//# sourceMappingURL=planning.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"planning.js","sourceRoot":"","sources":["../../../src/prompts/agents/planning.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAKtE,MAAM,oBAAoB,GAAG;;EAE3B,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoJxB,CAAC;AAOF,MAAM,UAAU,yBAAyB,CAAC,WAAmB,EAAE,oBAA4B,EAAE;IAC3F,MAAM,WAAW,GAAG;;;;;EAKpB,WAAW;EACX,iBAAiB;;;CAGlB,CAAC;IAEA,OAAO,oBAAoB,GAAG,WAAW,CAAC;AAC5C,CAAC;AAMD,MAAM,CAAC,MAAM,sBAAsB,GAAG,oBAAoB,GAAG;;;;;;;;;;;CAW5D,CAAC;AAEF,eAAe,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export { LANGUAGE_PRIORITY_RULE, LANGUAGE_PRIORITY_SHORT } from './shared/language-rules.js';
|
|
2
|
+
export { AVAILABLE_TOOLS, AVAILABLE_TOOLS_WITH_TODO, TOOL_REASON_GUIDE, FILE_MODIFICATION_RULES, } from './shared/tool-usage.js';
|
|
3
|
+
export { CODEBASE_FIRST_RULE, CODEBASE_FIRST_SHORT } from './shared/codebase-rules.js';
|
|
4
|
+
export { GIT_COMMIT_RULES } from './shared/git-rules.js';
|
|
5
|
+
export { PLAN_EXECUTE_SYSTEM_PROMPT } from './system/plan-execute.js';
|
|
6
|
+
export { COMPACT_SYSTEM_PROMPT } from './system/compact.js';
|
|
7
|
+
export { PLANNING_SYSTEM_PROMPT } from './agents/planning.js';
|
|
8
|
+
export { DOCS_SEARCH_SYSTEM_PROMPT, buildDocsSearchUserMessage } from './agents/docs-search.js';
|
|
9
|
+
export { DOCS_SEARCH_DECISION_PROMPT, DOCS_SEARCH_DECISION_RETRY_PROMPT, buildDocsSearchDecisionPrompt, parseDocsSearchDecision, } from './agents/docs-search-decision.js';
|
|
10
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/prompts/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAC7F,OAAO,EACL,eAAe,EACf,yBAAyB,EACzB,iBAAiB,EACjB,uBAAuB,GACxB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AACvF,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAGzD,OAAO,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAG5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAE9D,OAAO,EAAE,yBAAyB,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAChG,OAAO,EACL,2BAA2B,EAC3B,iCAAiC,EACjC,6BAA6B,EAC7B,uBAAuB,GACxB,MAAM,kCAAkC,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export { LANGUAGE_PRIORITY_RULE, LANGUAGE_PRIORITY_SHORT } from './shared/language-rules.js';
|
|
2
|
+
export { AVAILABLE_TOOLS, AVAILABLE_TOOLS_WITH_TODO, TOOL_REASON_GUIDE, FILE_MODIFICATION_RULES, } from './shared/tool-usage.js';
|
|
3
|
+
export { CODEBASE_FIRST_RULE, CODEBASE_FIRST_SHORT } from './shared/codebase-rules.js';
|
|
4
|
+
export { GIT_COMMIT_RULES } from './shared/git-rules.js';
|
|
5
|
+
export { PLAN_EXECUTE_SYSTEM_PROMPT } from './system/plan-execute.js';
|
|
6
|
+
export { COMPACT_SYSTEM_PROMPT } from './system/compact.js';
|
|
7
|
+
export { PLANNING_SYSTEM_PROMPT } from './agents/planning.js';
|
|
8
|
+
export { DOCS_SEARCH_SYSTEM_PROMPT, buildDocsSearchUserMessage } from './agents/docs-search.js';
|
|
9
|
+
export { DOCS_SEARCH_DECISION_PROMPT, DOCS_SEARCH_DECISION_RETRY_PROMPT, buildDocsSearchDecisionPrompt, parseDocsSearchDecision, } from './agents/docs-search-decision.js';
|
|
10
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/prompts/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAC7F,OAAO,EACL,eAAe,EACf,yBAAyB,EACzB,iBAAiB,EACjB,uBAAuB,GACxB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AACvF,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAGzD,OAAO,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAG5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAE9D,OAAO,EAAE,yBAAyB,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAChG,OAAO,EACL,2BAA2B,EAC3B,iCAAiC,EACjC,6BAA6B,EAC7B,uBAAuB,GACxB,MAAM,kCAAkC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codebase-rules.d.ts","sourceRoot":"","sources":["../../../src/prompts/shared/codebase-rules.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,mBAAmB,QAUxB,CAAC;AAKT,eAAO,MAAM,oBAAoB,QAEzB,CAAC;AAET,eAAe,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export const CODEBASE_FIRST_RULE = `
|
|
2
|
+
## CRITICAL - UNDERSTAND CODEBASE FIRST
|
|
3
|
+
|
|
4
|
+
For ANY coding-related task:
|
|
5
|
+
- Use list_files to understand project structure
|
|
6
|
+
- Use read_file to examine existing code patterns, conventions, and dependencies
|
|
7
|
+
- NEVER assume or guess about existing code - always verify first
|
|
8
|
+
- Follow the existing code style, naming conventions, and architectural patterns
|
|
9
|
+
|
|
10
|
+
This prevents breaking existing functionality and ensures consistency.
|
|
11
|
+
`.trim();
|
|
12
|
+
export const CODEBASE_FIRST_SHORT = `
|
|
13
|
+
CRITICAL: Read existing code before modifying. Never assume - always verify first.
|
|
14
|
+
`.trim();
|
|
15
|
+
export default CODEBASE_FIRST_RULE;
|
|
16
|
+
//# sourceMappingURL=codebase-rules.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codebase-rules.js","sourceRoot":"","sources":["../../../src/prompts/shared/codebase-rules.ts"],"names":[],"mappings":"AASA,MAAM,CAAC,MAAM,mBAAmB,GAAG;;;;;;;;;;CAUlC,CAAC,IAAI,EAAE,CAAC;AAKT,MAAM,CAAC,MAAM,oBAAoB,GAAG;;CAEnC,CAAC,IAAI,EAAE,CAAC;AAET,eAAe,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export declare const GIT_COMMIT_RULES = "\n## Git Commit Rules\n\nWhen the working directory is a git repository, follow these rules:\n\n### 1. Co-Authored-By Trailer\n\nWhen creating git commits, ALWAYS include this trailer at the end of the commit message:\n\n```\n\uD83D\uDC33 Co-Worked-With: \uD55C\uC124\nCo-Authored-By: \uD55C\uC124 <86968876+hanseol-bot@users.noreply.github.com>\n```\n\n**Commit message format:**\n```bash\ngit commit -m \"$(cat <<'EOF'\n<type>: <description>\n\n<optional body>\n\n\uD83D\uDC33 Co-Worked-With: \uD55C\uC124\nCo-Authored-By: \uD55C\uC124 <86968876+hanseol-bot@users.noreply.github.com>\nEOF\n)\"\n```\n\n**Example:**\n```bash\ngit commit -m \"$(cat <<'EOF'\nfeat: add user authentication\n\nImplemented JWT-based authentication with refresh tokens.\n\n\uD83D\uDC33 Co-Worked-With: \uD55C\uC124\nCo-Authored-By: \uD55C\uC124 <86968876+hanseol-bot@users.noreply.github.com>\nEOF\n)\"\n```\n\n### 2. Ask Before Commit\n\n**IMPORTANT: When a task is completed, ALWAYS ask the user if they want to commit the changes to git.**\n\nAfter completing file modifications or code changes:\n1. Summarize what was done\n2. Ask: \"Would you like me to commit these changes to git?\"\n3. Wait for user confirmation before running `git add` and `git commit`\n\n**Do NOT auto-commit without user permission.**\n\n### 3. Commit Message Convention\n\nFollow conventional commits format:\n- `feat:` - New feature\n- `fix:` - Bug fix\n- `refactor:` - Code refactoring\n- `style:` - Formatting, styling changes\n- `docs:` - Documentation changes\n- `test:` - Adding or updating tests\n- `chore:` - Maintenance tasks\n\n### 4. Pull Request Creation\n\nWhen creating pull requests, ALWAYS use HEREDOC for proper markdown formatting:\n\n```bash\ngh pr create --title \"feat: add new feature\" --body \"$(cat <<'EOF'\n## Summary\n- First change description\n- Second change description\n\n## Changes\nDetailed explanation of what was changed and why.\n\n\uD83D\uDC33 Co-Worked-With: \uD55C\uC124\nCo-Authored-By: \uD55C\uC124 <86968876+hanseol-bot@users.noreply.github.com>\nEOF\n)\"\n```\n\n**CRITICAL: Formatting Rules**\n- Use HEREDOC (`cat <<'EOF'`) for multi-line content - NEVER use literal \\n\n- Use actual angle brackets < > - NEVER HTML escape to < >\n- Markdown requires real newlines, not escape sequences\n";
|
|
2
|
+
//# sourceMappingURL=git-rules.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git-rules.d.ts","sourceRoot":"","sources":["../../../src/prompts/shared/git-rules.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,gBAAgB,gwEAqF5B,CAAC"}
|