gaunt-sloth-assistant 0.5.4 → 0.6.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.
Files changed (146) hide show
  1. package/.gsloth.backstory.md +0 -0
  2. package/.gsloth.chat.md +11 -0
  3. package/.gsloth.code.md +19 -0
  4. package/.gsloth.guidelines.md +0 -0
  5. package/.gsloth.review.md +0 -0
  6. package/.gsloth.system.md +0 -0
  7. package/.prettierrc.json +0 -0
  8. package/LICENSE +0 -0
  9. package/README.md +20 -52
  10. package/assets/gaunt-sloth-logo.png +0 -0
  11. package/assets/release-notes/v0_4_0.md +0 -0
  12. package/assets/release-notes/v0_5_0.md +0 -0
  13. package/assets/release-notes/v0_5_1.md +0 -0
  14. package/assets/release-notes/v0_5_2.md +0 -0
  15. package/assets/release-notes/v0_5_3.md +0 -0
  16. package/assets/release-notes/v0_6_0.md +44 -0
  17. package/dist/commands/askCommand.d.ts +0 -0
  18. package/dist/commands/askCommand.js +0 -0
  19. package/dist/commands/askCommand.js.map +0 -0
  20. package/dist/commands/chatCommand.d.ts +0 -0
  21. package/dist/commands/chatCommand.js +12 -2
  22. package/dist/commands/chatCommand.js.map +1 -1
  23. package/dist/commands/codeCommand.d.ts +6 -0
  24. package/dist/commands/codeCommand.js +92 -0
  25. package/dist/commands/codeCommand.js.map +1 -0
  26. package/dist/commands/commandUtils.d.ts +0 -0
  27. package/dist/commands/commandUtils.js +0 -0
  28. package/dist/commands/commandUtils.js.map +0 -0
  29. package/dist/commands/initCommand.d.ts +0 -0
  30. package/dist/commands/initCommand.js +0 -0
  31. package/dist/commands/initCommand.js.map +0 -0
  32. package/dist/commands/prCommand.d.ts +0 -0
  33. package/dist/commands/prCommand.js +0 -0
  34. package/dist/commands/prCommand.js.map +0 -0
  35. package/dist/commands/reviewCommand.d.ts +0 -0
  36. package/dist/commands/reviewCommand.js +0 -0
  37. package/dist/commands/reviewCommand.js.map +0 -0
  38. package/dist/config.d.ts +3 -0
  39. package/dist/config.js +3 -0
  40. package/dist/config.js.map +1 -1
  41. package/dist/configs/anthropic.d.ts +0 -0
  42. package/dist/configs/anthropic.js +0 -0
  43. package/dist/configs/anthropic.js.map +0 -0
  44. package/dist/configs/fake.d.ts +0 -0
  45. package/dist/configs/fake.js +0 -0
  46. package/dist/configs/fake.js.map +0 -0
  47. package/dist/configs/groq.d.ts +0 -0
  48. package/dist/configs/groq.js +0 -0
  49. package/dist/configs/groq.js.map +0 -0
  50. package/dist/configs/vertexai.d.ts +0 -0
  51. package/dist/configs/vertexai.js +0 -0
  52. package/dist/configs/vertexai.js.map +0 -0
  53. package/dist/consoleUtils.d.ts +0 -0
  54. package/dist/consoleUtils.js +0 -0
  55. package/dist/consoleUtils.js.map +0 -0
  56. package/dist/constants.d.ts +2 -0
  57. package/dist/constants.js +2 -0
  58. package/dist/constants.js.map +1 -1
  59. package/dist/filePathUtils.d.ts +0 -0
  60. package/dist/filePathUtils.js +0 -0
  61. package/dist/filePathUtils.js.map +0 -0
  62. package/dist/index.d.ts +0 -0
  63. package/dist/index.js +2 -0
  64. package/dist/index.js.map +1 -1
  65. package/dist/llmUtils.d.ts +1 -1
  66. package/dist/llmUtils.js +0 -0
  67. package/dist/llmUtils.js.map +1 -1
  68. package/dist/modules/questionAnsweringModule.d.ts +0 -0
  69. package/dist/modules/questionAnsweringModule.js +0 -0
  70. package/dist/modules/questionAnsweringModule.js.map +0 -0
  71. package/dist/modules/reviewModule.d.ts +0 -0
  72. package/dist/modules/reviewModule.js +0 -0
  73. package/dist/modules/reviewModule.js.map +0 -0
  74. package/dist/modules/types.d.ts +0 -0
  75. package/dist/modules/types.js +0 -0
  76. package/dist/modules/types.js.map +0 -0
  77. package/dist/prompt.d.ts +2 -0
  78. package/dist/prompt.js +7 -1
  79. package/dist/prompt.js.map +1 -1
  80. package/dist/providers/file.d.ts +0 -0
  81. package/dist/providers/file.js +0 -0
  82. package/dist/providers/file.js.map +0 -0
  83. package/dist/providers/ghIssueProvider.d.ts +0 -0
  84. package/dist/providers/ghIssueProvider.js +0 -0
  85. package/dist/providers/ghIssueProvider.js.map +0 -0
  86. package/dist/providers/ghPrDiffProvider.d.ts +0 -0
  87. package/dist/providers/ghPrDiffProvider.js +0 -0
  88. package/dist/providers/ghPrDiffProvider.js.map +0 -0
  89. package/dist/providers/jiraIssueLegacyProvider.d.ts +0 -0
  90. package/dist/providers/jiraIssueLegacyProvider.js +0 -0
  91. package/dist/providers/jiraIssueLegacyProvider.js.map +0 -0
  92. package/dist/providers/jiraIssueProvider.d.ts +0 -0
  93. package/dist/providers/jiraIssueProvider.js +0 -0
  94. package/dist/providers/jiraIssueProvider.js.map +0 -0
  95. package/dist/providers/text.d.ts +0 -0
  96. package/dist/providers/text.js +0 -0
  97. package/dist/providers/text.js.map +0 -0
  98. package/dist/providers/types.d.ts +0 -0
  99. package/dist/providers/types.js +0 -0
  100. package/dist/providers/types.js.map +0 -0
  101. package/dist/systemUtils.d.ts +0 -0
  102. package/dist/systemUtils.js +0 -0
  103. package/dist/systemUtils.js.map +0 -0
  104. package/dist/utils.d.ts +0 -0
  105. package/dist/utils.js +0 -0
  106. package/dist/utils.js.map +0 -0
  107. package/docs/COMMANDS.md +231 -0
  108. package/docs/CONFIGURATION.md +3 -0
  109. package/docs/DEVELOPMENT.md +0 -0
  110. package/docs/RELEASE-HOWTO.md +0 -0
  111. package/eslint.config.js +0 -0
  112. package/maintenance/doc-maintenance.md +0 -0
  113. package/package.json +1 -1
  114. package/src/commands/askCommand.ts +0 -0
  115. package/src/commands/chatCommand.ts +12 -2
  116. package/src/commands/codeCommand.ts +106 -0
  117. package/src/commands/commandUtils.ts +0 -0
  118. package/src/commands/initCommand.ts +0 -0
  119. package/src/commands/prCommand.ts +0 -0
  120. package/src/commands/reviewCommand.ts +0 -0
  121. package/src/config.ts +6 -0
  122. package/src/configs/anthropic.ts +0 -0
  123. package/src/configs/fake.ts +0 -0
  124. package/src/configs/groq.ts +0 -0
  125. package/src/configs/vertexai.ts +0 -0
  126. package/src/consoleUtils.ts +0 -0
  127. package/src/constants.ts +2 -0
  128. package/src/filePathUtils.ts +0 -0
  129. package/src/index.ts +2 -0
  130. package/src/llmUtils.ts +1 -1
  131. package/src/modules/questionAnsweringModule.ts +0 -0
  132. package/src/modules/reviewModule.ts +0 -0
  133. package/src/modules/types.ts +0 -0
  134. package/src/prompt.ts +14 -1
  135. package/src/providers/file.ts +0 -0
  136. package/src/providers/ghIssueProvider.ts +0 -0
  137. package/src/providers/ghPrDiffProvider.ts +0 -0
  138. package/src/providers/jiraIssueLegacyProvider.ts +0 -0
  139. package/src/providers/jiraIssueProvider.ts +0 -0
  140. package/src/providers/text.ts +0 -0
  141. package/src/providers/types.ts +0 -0
  142. package/src/systemUtils.ts +0 -0
  143. package/src/utils.ts +0 -0
  144. package/tsconfig.json +0 -0
  145. package/vitest-it.config.ts +1 -1
  146. package/vitest.config.ts +0 -0
File without changes
@@ -0,0 +1,11 @@
1
+ # Chat Mode Instructions
2
+
3
+ You are a helpful AI assistant engaged in a conversational chat session. Your role is to:
4
+
5
+ - Provide informative, accurate, and helpful responses to user queries
6
+ - Maintain context throughout the conversation
7
+ - Be conversational and friendly while remaining professional
8
+ - Ask clarifying questions when needed to better understand the user's intent
9
+ - Provide examples and explanations when appropriate
10
+
11
+ Remember that this is an interactive chat session, so keep your responses concise and engaging. Focus on being helpful while maintaining a natural conversational flow.
@@ -0,0 +1,19 @@
1
+ # Code Mode Instructions
2
+
3
+ You are an AI coding assistant with full file system access within the user's project. Your role is to:
4
+
5
+ - Help write, modify, and debug code
6
+ - Understand and work with the existing codebase
7
+ - Follow project conventions and best practices
8
+ - Create, read, update, and delete files as needed to complete coding tasks
9
+ - Run commands and scripts to test and validate changes
10
+ - Provide clear explanations of the changes you make
11
+
12
+ You have access to the entire project directory and can:
13
+ - Navigate the file system
14
+ - Read and analyze existing code
15
+ - Make modifications to implement features or fix bugs
16
+ - Create new files and directories as needed
17
+ - Execute commands to build, test, or run the project
18
+
19
+ Focus on writing clean, maintainable code that follows the project's established patterns and conventions. Always test your changes when possible and explain what you're doing and why.
File without changes
package/.gsloth.review.md CHANGED
File without changes
package/.gsloth.system.md CHANGED
File without changes
package/.prettierrc.json CHANGED
File without changes
package/LICENSE CHANGED
File without changes
package/README.md CHANGED
@@ -41,79 +41,47 @@ Unlike proprietary solutions that restrict you to a single AI provider, Gaunt Sl
41
41
  - Anthropic;
42
42
  - Groq.
43
43
 
44
- ## Primary Functions:
44
+ ## Commands Overview
45
45
 
46
46
  `gth` and `gsloth` commands are used interchangeably, both `gsloth pr 42` and `gth pr 42` do the same thing.
47
47
 
48
- ### Review PR (Pull Request)
49
- To review PR by PR number:
48
+ For detailed information about all commands, see [docs/COMMANDS.md](./docs/COMMANDS.md).
50
49
 
51
- First make sure the official [GitHub cli (gh)](https://cli.github.com/) is installed
52
- and authenticated to have access to your project.
50
+ ### Available Commands:
53
51
 
54
- Open terminal (command line) in your project directory.
52
+ - **`init`** - Initialize Gaunt Sloth in your project with a specific AI provider
53
+ - **`pr`** - ⚠️ This feature requires GitHub CLI to be installed. Review pull requests with optional requirement integration (GitHub issues or Jira).
54
+ - **`review`** - Review any diff or content from various sources
55
+ - **`ask`** - Ask questions about code or programming topics
56
+ - **`chat`** - Start an interactive chat session
57
+ - **`code`** - Write code interactively with full project context
55
58
 
56
- Type command: `gsloth pr [desired pull request number]`, for example:
59
+ ### Quick Examples:
57
60
 
58
- Please note that for higher quality code reviews sloth now has read access and may read files in the current project,
59
- this means that the branch of reviewed PR should be checked out, otherwise Sloth might get confused.
60
- If you are typically review PRs without checking them out and looking at diff only is enough,
61
- consider setting pr.filesystem to 'none' in your config.
62
-
63
- ```shell
64
- gsloth pr 42
65
- ```
66
-
67
- Review PR providing a markdown file with requirements and notes.
61
+ **Initialize project:**
68
62
  ```shell
69
- gsloth pr 42 -f PROJ-1234.md
63
+ gsloth init anthropic
70
64
  ```
71
65
 
72
- ### GitHub Issues Integration
73
-
74
- The command syntax is `gsloth pr <prId> [githubIssueId]`. For example, to review PR #42 and include GitHub issue #23 as requirements:
75
-
66
+ **Review PR with requirements:**
76
67
  ```shell
77
- gsloth pr 42 37
68
+ gsloth pr 42 23 # Review PR #42 with GitHub issue #23
78
69
  ```
79
70
 
80
- **Prerequisites:**
81
-
82
- 1. Make sure the official [GitHub CLI (gh)](https://cli.github.com/) is installed and authenticated
83
- 2. Ensure you have access to the repository's issues
84
-
85
- No further configuration is needed! Gaunt Sloth will automatically fetch the GitHub issue content using the GitHub CLI.
86
-
87
- The project review preamble can be modified to reject a pull request immediately if it appears to implement something different from what was requested in the requirements.
88
-
89
- Gaunt Sloth also supports JIRA integration as an alternative requirements provider.
90
- For more information on **JIRA** setup and other configuration options, see [CONFIGURATION.md#jira](./docs/CONFIGURATION.md#jira).
91
-
92
- ### Review any Diff
93
-
94
- Review current local changes:
71
+ **Review local changes:**
95
72
  ```shell
96
73
  git --no-pager diff | gsloth review
97
74
  ```
98
75
 
76
+ **Ask questions:**
99
77
  ```shell
100
- git --no-pager diff origin/master...yourgitcommithash | gsloth review
101
- ```
102
- (helpful to review a subset of PR)
103
-
104
- ### Question Answering
105
- ```shell
106
- gsloth ask "which types of primitives are available in JavaScript?"
78
+ gsloth ask "What does this function do?" -f utils.js
107
79
  ```
108
80
 
81
+ **Interactive sessions:**
109
82
  ```shell
110
- gsloth ask "Please have a look at this file" -f index.js
111
- ```
112
-
113
- Multiple files may be provided as well
114
-
115
- ```shell
116
- gsloth ask "Please have a look at these files" -f index.js test.js
83
+ gsloth chat # Start chat session
84
+ gsloth code # Start coding session
117
85
  ```
118
86
 
119
87
  ## Installation
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -0,0 +1,44 @@
1
+ # v0.6.0 Interactive Code Command
2
+
3
+ ## New Features
4
+
5
+ ### Interactive Code Command
6
+ - Added new `code` command for interactive coding sessions with enhanced project awareness
7
+ - Features:
8
+ - Full file system read access within your project for better context
9
+ - Interactive coding sessions with conversation memory
10
+ - Code-specific prompts and guidelines for optimal code generation
11
+ - Session history saved to `.gsloth/gth_<timestamp>_CODE.md` files
12
+ - Clean exit with 'exit' command or Ctrl+C
13
+ - Automatic streaming disabled for better interactive experience
14
+
15
+ ### Command Improvements
16
+ - Both `chat` and `code` commands now use system prompts for better responses
17
+ - Enhanced prompt loading with dedicated `readCodePrompt()` and `readChatPrompt()` functions
18
+ - Improved separation of concerns between chat (general assistance) and code (development tasks)
19
+
20
+ ## Documentation
21
+
22
+ ### New Documentation Structure
23
+ - Created comprehensive `docs/COMMANDS.md` with detailed information about all commands
24
+ - Restructured README.md to provide concise command overview with link to detailed documentation
25
+ - Updated `docs/CONFIGURATION.md` to include configuration options for new commands
26
+
27
+ ### Documentation Updates
28
+ - Added clear descriptions for all six available commands: `init`, `pr`, `review`, `ask`, `chat`, and `code`
29
+ - Included examples and use cases for each command
30
+ - Documented command-specific configuration options
31
+ - Added information about output file locations and naming conventions
32
+
33
+ ## Technical Improvements
34
+ - Consistent command structure across chat and code commands
35
+ - Better error handling in interactive sessions
36
+ - Improved module organization with dedicated prompt reading functions
37
+
38
+ ## Breaking Changes
39
+ - None
40
+
41
+ ## Upgrade Notes
42
+ - The new `code` command is available immediately after upgrade
43
+ - No configuration changes required for existing installations
44
+ - All existing commands continue to work as before
File without changes
File without changes
File without changes
File without changes
@@ -8,6 +8,7 @@ import { HumanMessage, SystemMessage } from '@langchain/core/messages';
8
8
  import { createInterface, error, exit, stdin as input, stdout as output, } from '#src/systemUtils.js';
9
9
  import { getGslothFilePath } from '#src/filePathUtils.js';
10
10
  import { generateStandardFileName, appendToFile } from '#src/utils.js';
11
+ import { readBackstory, readGuidelines, readSystemPrompt, readChatPrompt } from '#src/prompt.js';
11
12
  export function chatCommand(program) {
12
13
  program
13
14
  .command('chat')
@@ -27,7 +28,16 @@ export function chatCommand(program) {
27
28
  const processMessage = async (userInput) => {
28
29
  const messages = [];
29
30
  if (isFirstMessage) {
30
- messages.push(new SystemMessage('You are a helpful AI assistant.'));
31
+ const systemPromptParts = [readBackstory(), readGuidelines(config.projectGuidelines)];
32
+ const chatPrompt = readChatPrompt();
33
+ if (chatPrompt) {
34
+ systemPromptParts.push(chatPrompt);
35
+ }
36
+ const systemPrompt = readSystemPrompt();
37
+ if (systemPrompt) {
38
+ systemPromptParts.push(systemPrompt);
39
+ }
40
+ messages.push(new SystemMessage(systemPromptParts.join('\n')));
31
41
  }
32
42
  messages.push(new HumanMessage(userInput));
33
43
  const runConfig = {
@@ -63,7 +73,7 @@ export function chatCommand(program) {
63
73
  await processMessage(message);
64
74
  }
65
75
  else {
66
- display("\nHello! I'm Gaunt Sloth, your AI assistant. How can I help you today?");
76
+ display('\nGaunt Sloth is ready to chat. Type your prompt.');
67
77
  display(chalk.gray("Type 'exit' or hit Ctrl+C to exit chat\n"));
68
78
  }
69
79
  if (!shouldExit)
@@ -1 +1 @@
1
- {"version":3,"file":"chatCommand.js","sourceRoot":"","sources":["../../src/commands/chatCommand.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chatCommand.js","sourceRoot":"","sources":["../../src/commands/chatCommand.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { Command } from 'commander';
2
+ /**
3
+ * Adds the code command to the program
4
+ * @param program - The commander program
5
+ */
6
+ export declare function codeCommand(program: Command): void;
@@ -0,0 +1,92 @@
1
+ import { initConfig } from '#src/config.js';
2
+ import { display } from '#src/consoleUtils.js';
3
+ import { invoke } from '#src/llmUtils.js';
4
+ import { v4 as uuidv4 } from 'uuid';
5
+ import chalk from 'chalk';
6
+ import { MemorySaver } from '@langchain/langgraph';
7
+ import { HumanMessage, SystemMessage } from '@langchain/core/messages';
8
+ import { createInterface, error, exit, stdin as input, stdout as output, } from '#src/systemUtils.js';
9
+ import { getGslothFilePath } from '#src/filePathUtils.js';
10
+ import { generateStandardFileName, appendToFile } from '#src/utils.js';
11
+ import { readBackstory, readGuidelines, readSystemPrompt, readCodePrompt } from '#src/prompt.js';
12
+ /**
13
+ * Adds the code command to the program
14
+ * @param program - The commander program
15
+ */
16
+ export function codeCommand(program) {
17
+ program
18
+ .command('code')
19
+ .description('Interactively write code with sloth (has full file system access within your project)')
20
+ .argument('[message]', 'Initial message to start the code session')
21
+ .action(async (message) => {
22
+ try {
23
+ // Force streaming Off for code, it does not play nicely with the input interface
24
+ const config = { ...(await initConfig()), streamOutput: false };
25
+ const checkpointSaver = new MemorySaver();
26
+ const rl = createInterface({ input, output });
27
+ let isFirstMessage = true;
28
+ let shouldExit = false;
29
+ const thread_id = uuidv4();
30
+ const codeLogFileName = getGslothFilePath(generateStandardFileName('CODE'));
31
+ display(chalk.gray(`Code session will be logged to ${codeLogFileName}\n`));
32
+ const processMessage = async (userInput) => {
33
+ const messages = [];
34
+ if (isFirstMessage) {
35
+ const systemPromptParts = [readBackstory(), readGuidelines(config.projectGuidelines)];
36
+ const codePrompt = readCodePrompt();
37
+ if (codePrompt) {
38
+ systemPromptParts.push(codePrompt);
39
+ }
40
+ const systemPrompt = readSystemPrompt();
41
+ if (systemPrompt) {
42
+ systemPromptParts.push(systemPrompt);
43
+ }
44
+ messages.push(new SystemMessage(systemPromptParts.join('\n')));
45
+ }
46
+ messages.push(new HumanMessage(userInput));
47
+ const runConfig = {
48
+ configurable: { thread_id },
49
+ };
50
+ const aiResponse = await invoke('code', messages, config, runConfig, checkpointSaver);
51
+ const logEntry = `## User\n\n${userInput}\n\n## Assistant\n\n${aiResponse}\n\n`;
52
+ appendToFile(codeLogFileName, logEntry);
53
+ isFirstMessage = false;
54
+ };
55
+ const askQuestion = () => {
56
+ rl.question(chalk.magenta(' > '), async (userInput) => {
57
+ if (userInput.toLowerCase() === 'exit') {
58
+ rl.close();
59
+ shouldExit = true;
60
+ return;
61
+ }
62
+ if (isFirstMessage && !userInput.trim()) {
63
+ rl.close();
64
+ return;
65
+ }
66
+ if (!userInput.trim()) {
67
+ rl.close();
68
+ return;
69
+ }
70
+ await processMessage(userInput);
71
+ display(chalk.gray("Type 'exit' or hit Ctrl+C to exit code session\n"));
72
+ if (!shouldExit)
73
+ askQuestion();
74
+ });
75
+ };
76
+ if (message) {
77
+ await processMessage(message);
78
+ }
79
+ else {
80
+ display('\nGaunt Sloth is ready to code. Type your prompt.');
81
+ display(chalk.gray("Type 'exit' or hit Ctrl+C to exit code session\n"));
82
+ }
83
+ if (!shouldExit)
84
+ askQuestion();
85
+ }
86
+ catch (err) {
87
+ error(`Error in code command: ${err}`);
88
+ exit(1);
89
+ }
90
+ });
91
+ }
92
+ //# sourceMappingURL=codeCommand.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codeCommand.js","sourceRoot":"","sources":["../../src/commands/codeCommand.ts"],"names":[],"mappings":"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"}
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
package/dist/config.d.ts CHANGED
@@ -43,6 +43,9 @@ interface BaseSlothConfig {
43
43
  chat?: {
44
44
  filesystem?: string[] | 'all' | 'none';
45
45
  };
46
+ code?: {
47
+ filesystem?: string[] | 'all' | 'none';
48
+ };
46
49
  };
47
50
  requirementsProviderConfig?: Record<string, unknown>;
48
51
  contentProviderConfig?: Record<string, unknown>;
package/dist/config.js CHANGED
@@ -26,6 +26,9 @@ export const DEFAULT_CONFIG = {
26
26
  contentProvider: 'github', // gh pr diff NN
27
27
  requirementsProvider: 'github', // gh issue view NN
28
28
  },
29
+ code: {
30
+ filesystem: 'all',
31
+ },
29
32
  },
30
33
  };
31
34
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC/F,OAAO,EAAE,kBAAkB,EAAE,gCAAgC,EAAE,MAAM,eAAe,CAAC;AACrF,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAElD,OAAO,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAE1F,OAAO,EACL,sBAAsB,EACtB,wBAAwB,EACxB,uBAAuB,EACvB,kBAAkB,EAClB,2BAA2B,GAC5B,MAAM,mBAAmB,CAAC;AA0D3B,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,UAAU,EAAE,WAAW,EAAE,MAAM,CAAU,CAAC;AAGlF,MAAM,CAAC,MAAM,cAAc,GAAyB;IAClD,GAAG,EAAE,SAAS;IACd,eAAe,EAAE,MAAM;IACvB,oBAAoB,EAAE,MAAM;IAC5B,iBAAiB,EAAE,kBAAkB;IACrC,yBAAyB,EAAE,2BAA2B;IACtD,YAAY,EAAE,IAAI;IAClB,UAAU,EAAE;QACV,WAAW;QACX,qBAAqB;QACrB,gBAAgB;QAChB,gBAAgB;QAChB,cAAc;QACd,eAAe;QACf,0BAA0B;KAC3B;IACD,QAAQ,EAAE;QACR,EAAE,EAAE;YACF,eAAe,EAAE,QAAQ,EAAE,gBAAgB;YAC3C,oBAAoB,EAAE,QAAQ,EAAE,mBAAmB;SACpD;KACF;CACF,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU;IAC9B,MAAM,cAAc,GAAG,uBAAuB,CAAC,wBAAwB,CAAC,CAAC;IAEzE,yCAAyC;IACzC,IAAI,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;QAC/B,IAAI,CAAC;YACH,oDAAoD;YACpD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,cAAc,EAAE,MAAM,CAAC,CAAmB,CAAC;YACtF,4EAA4E;YAC5E,IAAI,UAAU,CAAC,GAAG,IAAI,OAAO,UAAU,CAAC,GAAG,KAAK,QAAQ,IAAI,MAAM,IAAI,UAAU,CAAC,GAAG,EAAE,CAAC;gBACrF,OAAO,MAAM,aAAa,CAAC,UAAU,CAAC,CAAC;YACzC,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,GAAG,cAAc,0DAA0D,CAAC,CAAC;gBACnF,IAAI,CAAC,CAAC,CAAC,CAAC;gBACR,wCAAwC;gBACxC,iHAAiH;gBACjH,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;YAChD,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,YAAY,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACjD,YAAY,CACV,8BAA8B,wBAAwB,2BAA2B,CAClF,CAAC;YACF,gCAAgC;YAChC,OAAO,WAAW,EAAE,CAAC;QACvB,CAAC;IACH,CAAC;SAAM,CAAC;QACN,gCAAgC;QAChC,OAAO,WAAW,EAAE,CAAC;IACvB,CAAC;AACH,CAAC;AAED,2CAA2C;AAC3C,KAAK,UAAU,WAAW;IACxB,MAAM,YAAY,GAAG,uBAAuB,CAAC,sBAAsB,CAAC,CAAC;IACrE,IAAI,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAC7B,IAAI,CAAC;YACH,MAAM,CAAC,GAAG,MAAM,kBAAkB,CAAC,YAAY,CAAC,CAAC;YACjD,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;YACrD,OAAO,WAAW,CAAC,YAAY,CAAgB,CAAC;QAClD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,YAAY,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACjD,YAAY,CAAC,8BAA8B,sBAAsB,2BAA2B,CAAC,CAAC;YAC9F,gCAAgC;YAChC,OAAO,YAAY,EAAE,CAAC;QACxB,CAAC;IACH,CAAC;SAAM,CAAC;QACN,+BAA+B;QAC/B,OAAO,YAAY,EAAE,CAAC;IACxB,CAAC;AACH,CAAC;AAED,4CAA4C;AAC5C,KAAK,UAAU,YAAY;IACzB,MAAM,aAAa,GAAG,uBAAuB,CAAC,uBAAuB,CAAC,CAAC;IACvE,IAAI,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QAC9B,IAAI,CAAC;YACH,MAAM,CAAC,GAAG,MAAM,kBAAkB,CAAC,aAAa,CAAC,CAAC;YAClD,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;YACtD,OAAO,WAAW,CAAC,YAAY,CAAgB,CAAC;QAClD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,YAAY,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACjD,YAAY,CAAC,8BAA8B,uBAAuB,GAAG,CAAC,CAAC;YACvE,YAAY,CAAC,yEAAyE,CAAC,CAAC;YACxF,IAAI,CAAC,CAAC,CAAC,CAAC;QACV,CAAC;IACH,CAAC;SAAM,CAAC;QACN,wBAAwB;QACxB,YAAY,CACV,qDAAqD;YACnD,GAAG,wBAAwB,KAAK,sBAAsB,QAAQ,uBAAuB,GAAG;YACxF,4BAA4B,CAC/B,CAAC;QACF,IAAI,CAAC,CAAC,CAAC,CAAC;IACV,CAAC;IACD,iHAAiH;IACjH,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;AAChD,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,UAA0B;IAC5D,IAAI,CAAC;QACH,IAAI,UAAU,CAAC,GAAG,IAAI,OAAO,UAAU,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;YACzD,0EAA0E;YAC1E,MAAM,OAAO,GAAI,UAAU,CAAC,GAAiB,CAAC,IAAI,CAAC;YACnD,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,YAAY,CAAC,mCAAmC,CAAC,CAAC;gBAClD,IAAI,CAAC,CAAC,CAAC,CAAC;YACV,CAAC;YAED,kDAAkD;YAClD,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC;YACjC,uCAAuC;YACvC,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,aAAa,OAAO,KAAK,CAAC,CAAC;YAC7D,IAAI,YAAY,CAAC,iBAAiB,EAAE,CAAC;gBACnC,MAAM,GAAG,GAAG,CAAC,MAAM,YAAY,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAkB,CAAC;gBAC/E,OAAO,cAAc,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;YACzC,CAAC;iBAAM,CAAC;gBACN,cAAc,CAAC,qBAAqB,OAAO,4CAA4C,CAAC,CAAC;gBACzF,IAAI,CAAC,CAAC,CAAC,CAAC;YACV,CAAC;QACH,CAAC;aAAM,CAAC;YACN,YAAY,CAAC,uCAAuC,CAAC,CAAC;YACtD,IAAI,CAAC,CAAC,CAAC,CAAC;QACV,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC;YACnE,YAAY,CAAC,aAAc,UAAU,CAAC,GAAiB,CAAC,IAAI,kBAAkB,CAAC,CAAC;QAClF,CAAC;aAAM,CAAC;YACN,YAAY,CAAC,gCAAgC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC7F,CAAC;QACD,IAAI,CAAC,CAAC,CAAC,CAAC;IACV,CAAC;IACD,iHAAiH;IACjH,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;AAChD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,UAAkB;IAC1D,oCAAoC;IACpC,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC,UAAwB,CAAC,EAAE,CAAC;QAChE,YAAY,CACV,wBAAwB,UAAU,wBAAwB,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC/F,CAAC;QACF,IAAI,CAAC,CAAC,CAAC,CAAC;IACV,CAAC;IAED,WAAW,CAAC,2BAA2B,CAAC,CAAC;IACzC,0BAA0B,EAAE,CAAC;IAC7B,cAAc,CAAC,wDAAwD,kBAAkB,KAAK,CAAC,CAAC;IAEhG,WAAW,CAAC,+BAA+B,UAAU,EAAE,CAAC,CAAC;IACzD,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,aAAa,UAAU,KAAK,CAAC,CAAC;IAChE,YAAY,CAAC,IAAI,CAAC,wBAAwB,CAAC,wBAAwB,CAAC,CAAC,CAAC;AACxE,CAAC;AAED,MAAM,UAAU,0BAA0B;IACxC,MAAM,cAAc,GAAG,wBAAwB,CAAC,kBAAkB,CAAC,CAAC;IACpE,MAAM,UAAU,GAAG,wBAAwB,CAAC,2BAA2B,CAAC,CAAC;IAEzE;;;;OAIG;IACH,MAAM,kBAAkB,GAAG;;;;2EAI8C,kBAAkB;;qBAExE,kBAAkB;CACtC,CAAC;IAEA;;;;OAIG;IACH,MAAM,cAAc,GAAG;;;;;;;;;;;;;;;CAexB,CAAC;IAEA,gCAAgC,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;IACrE,gCAAgC,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;AAC/D,CAAC;AAED;;GAEG;AACH,SAAS,WAAW,CAAC,aAAmC;IACtD,MAAM,MAAM,GAAG,aAA4B,CAAC;IAC5C,OAAO;QACL,GAAG,cAAc;QACjB,GAAG,MAAM;QACT,QAAQ,EAAE,EAAE,GAAG,cAAc,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,IAAI,EAAE,CAAC,EAAE;KACtE,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,cAAc,CAAC,MAAsB,EAAE,GAAkB;IAChE,OAAO,WAAW,CAAC,EAAE,GAAG,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;AACzC,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -5,3 +5,5 @@ export declare const GSLOTH_BACKSTORY = ".gsloth.backstory.md";
5
5
  export declare const PROJECT_GUIDELINES = ".gsloth.guidelines.md";
6
6
  export declare const PROJECT_REVIEW_INSTRUCTIONS = ".gsloth.review.md";
7
7
  export declare const GSLOTH_SYSTEM_PROMPT = ".gsloth.system.md";
8
+ export declare const GSLOTH_CHAT_PROMPT = ".gsloth.chat.md";
9
+ export declare const GSLOTH_CODE_PROMPT = ".gsloth.code.md";
package/dist/constants.js CHANGED
@@ -5,4 +5,6 @@ export const GSLOTH_BACKSTORY = '.gsloth.backstory.md';
5
5
  export const PROJECT_GUIDELINES = '.gsloth.guidelines.md';
6
6
  export const PROJECT_REVIEW_INSTRUCTIONS = '.gsloth.review.md';
7
7
  export const GSLOTH_SYSTEM_PROMPT = '.gsloth.system.md';
8
+ export const GSLOTH_CHAT_PROMPT = '.gsloth.chat.md';
9
+ export const GSLOTH_CODE_PROMPT = '.gsloth.code.md';
8
10
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,sBAAsB,GAAG,mBAAmB,CAAC;AAC1D,MAAM,CAAC,MAAM,wBAAwB,GAAG,qBAAqB,CAAC;AAC9D,MAAM,CAAC,MAAM,uBAAuB,GAAG,oBAAoB,CAAC;AAC5D,MAAM,CAAC,MAAM,gBAAgB,GAAG,sBAAsB,CAAC;AACvD,MAAM,CAAC,MAAM,kBAAkB,GAAG,uBAAuB,CAAC;AAC1D,MAAM,CAAC,MAAM,2BAA2B,GAAG,mBAAmB,CAAC;AAC/D,MAAM,CAAC,MAAM,oBAAoB,GAAG,mBAAmB,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,sBAAsB,GAAG,mBAAmB,CAAC;AAC1D,MAAM,CAAC,MAAM,wBAAwB,GAAG,qBAAqB,CAAC;AAC9D,MAAM,CAAC,MAAM,uBAAuB,GAAG,oBAAoB,CAAC;AAC5D,MAAM,CAAC,MAAM,gBAAgB,GAAG,sBAAsB,CAAC;AACvD,MAAM,CAAC,MAAM,kBAAkB,GAAG,uBAAuB,CAAC;AAC1D,MAAM,CAAC,MAAM,2BAA2B,GAAG,mBAAmB,CAAC;AAC/D,MAAM,CAAC,MAAM,oBAAoB,GAAG,mBAAmB,CAAC;AACxD,MAAM,CAAC,MAAM,kBAAkB,GAAG,iBAAiB,CAAC;AACpD,MAAM,CAAC,MAAM,kBAAkB,GAAG,iBAAiB,CAAC"}
File without changes
File without changes
File without changes
package/dist/index.d.ts CHANGED
File without changes
package/dist/index.js CHANGED
@@ -4,6 +4,7 @@ import { initCommand } from '#src/commands/initCommand.js';
4
4
  import { reviewCommand } from '#src/commands/reviewCommand.js';
5
5
  import { prCommand } from '#src/commands/prCommand.js';
6
6
  import { chatCommand } from '#src/commands/chatCommand.js';
7
+ import { codeCommand } from '#src/commands/codeCommand.js';
7
8
  import { getSlothVersion } from '#src/utils.js';
8
9
  import { argv, readStdin } from '#src/systemUtils.js';
9
10
  import { setVerbose } from '#src/llmUtils.js';
@@ -25,5 +26,6 @@ reviewCommand(program);
25
26
  prCommand(program);
26
27
  askCommand(program);
27
28
  chatCommand(program);
29
+ codeCommand(program);
28
30
  await readStdin(program);
29
31
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,QAAQ,CAAC;KACd,WAAW,CAAC,0CAA0C,CAAC;KACvD,OAAO,CAAC,eAAe,EAAE,CAAC;KAC1B,MAAM,CAAC,WAAW,EAAE,kCAAkC,CAAC,CAAC;AAE3D,mDAAmD;AACnD,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;AAC3B,IAAI,OAAO,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC;IACtC,0BAA0B;IAC1B,UAAU,CAAC,IAAI,CAAC,CAAC;AACnB,CAAC;AAED,sEAAsE;AACtE,WAAW,CAAC,OAAO,CAAC,CAAC;AACrB,aAAa,CAAC,OAAO,CAAC,CAAC;AACvB,SAAS,CAAC,OAAO,CAAC,CAAC;AACnB,UAAU,CAAC,OAAO,CAAC,CAAC;AACpB,WAAW,CAAC,OAAO,CAAC,CAAC;AAErB,MAAM,SAAS,CAAC,OAAO,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,QAAQ,CAAC;KACd,WAAW,CAAC,0CAA0C,CAAC;KACvD,OAAO,CAAC,eAAe,EAAE,CAAC;KAC1B,MAAM,CAAC,WAAW,EAAE,kCAAkC,CAAC,CAAC;AAE3D,mDAAmD;AACnD,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;AAC3B,IAAI,OAAO,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC;IACtC,0BAA0B;IAC1B,UAAU,CAAC,IAAI,CAAC,CAAC;AACnB,CAAC;AAED,sEAAsE;AACtE,WAAW,CAAC,OAAO,CAAC,CAAC;AACrB,aAAa,CAAC,OAAO,CAAC,CAAC;AACvB,SAAS,CAAC,OAAO,CAAC,CAAC;AACnB,UAAU,CAAC,OAAO,CAAC,CAAC;AACpB,WAAW,CAAC,OAAO,CAAC,CAAC;AACrB,WAAW,CAAC,OAAO,CAAC,CAAC;AAErB,MAAM,SAAS,CAAC,OAAO,CAAC,CAAC"}
@@ -2,5 +2,5 @@ import type { Message } from '#src/modules/types.js';
2
2
  import { SlothConfig } from '#src/config.js';
3
3
  import { type RunnableConfig } from '@langchain/core/runnables';
4
4
  import { BaseCheckpointSaver } from '@langchain/langgraph';
5
- export declare function invoke(command: 'ask' | 'pr' | 'review' | 'chat' | undefined, messages: Message[], config: SlothConfig, runConfig?: RunnableConfig, checkpointSaver?: BaseCheckpointSaver | undefined): Promise<string>;
5
+ export declare function invoke(command: 'ask' | 'pr' | 'review' | 'chat' | 'code' | undefined, messages: Message[], config: SlothConfig, runConfig?: RunnableConfig, checkpointSaver?: BaseCheckpointSaver | undefined): Promise<string>;
6
6
  export declare function setVerbose(debug: boolean): void;
package/dist/llmUtils.js CHANGED
File without changes
@@ -1 +1 @@
1
- {"version":3,"file":"llmUtils.js","sourceRoot":"","sources":["../src/llmUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"llmUtils.js","sourceRoot":"","sources":["../src/llmUtils.ts"],"names":[],"mappings":"AACA,OAAO,EAAa,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAGlE,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC1F,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAKlD,MAAM,iBAAiB,GAAG;IACxB,OAAO,EAAE,KAAK;CACf,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,MAAM,CAC1B,OAA8D,EAC9D,QAAmB,EACnB,MAAmB,EACnB,SAA0B,EAC1B,eAAiD;IAEjD,IAAI,CAAC;QACH,IAAI,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,WAAW,EAAE,CAAC;YACjE,cAAc,CAAC,iEAAiE,CAAC,CAAC;YAClF,MAAM,CAAC,YAAY,GAAG,KAAK,CAAC;QAC9B,CAAC;IACH,CAAC;IAAC,MAAM,CAAC,CAAA,CAAC;IACV,IAAI,iBAAiB,CAAC,OAAO,EAAE,CAAC;QAC9B,MAAM,CAAC,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC;IAC5B,CAAC;IAED,uDAAuD;IACvD,IAAI,eAAe,GAAG,MAAM,CAAC;IAC7B,IAAI,OAAO,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,UAAU,KAAK,SAAS,EAAE,CAAC;QACpE,eAAe,GAAG;YAChB,GAAG,MAAM;YACT,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,UAAW;SACjD,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,SAAS,CAAC,eAAe,CAAC,CAAC;IAE1C,MAAM,QAAQ,GAAG,CAAC,MAAM,MAAM,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;IAClD,MAAM,KAAK,GAAG,WAAW,CAAC,QAAQ,EAAE,eAAe,CAAC,UAAU,IAAI,MAAM,CAAC,CAAC;IAE1E,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,WAAW,CAAC,UAAU,KAAK,CAAC,MAAM,SAAS,CAAC,CAAC;IAC/C,CAAC;IAED,yBAAyB;IACzB,MAAM,KAAK,GAAG,gBAAgB,CAAC;QAC7B,GAAG,EAAE,MAAM,CAAC,GAAG;QACf,KAAK;QACL,eAAe;KAChB,CAAC,CAAC;IAEH,gBAAgB;IAChB,IAAI,CAAC;QACH,OAAO,CAAC,sBAAsB,CAAC,CAAC;QAChC,MAAM,MAAM,GAAG,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;QACjC,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;YACzB,MAAM,QAAQ,GAAG,IAAI,iBAAiB,CAAC,WAAW,CAAC,CAAC;YACpD,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,EAAE,SAAS,CAAC,CAAC;gBAC7D,MAAM,CAAC,SAAS,GAAG,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,OAAiB,CAAC;gBACrF,MAAM,SAAS,GACb,QAAQ,CAAC,QAAQ;qBACd,MAAM,CAAC,CAAC,GAAc,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;qBACvE,OAAO,CAAC,CAAC,GAAc,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,EAAY,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;gBACvF,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACzB,WAAW,CAAC,iBAAiB,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACvD,CAAC;YACH,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,cAAc,CAAC,wBAAyB,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;YACjE,CAAC;oBAAS,CAAC;gBACT,QAAQ,CAAC,IAAI,EAAE,CAAC;YAClB,CAAC;YACD,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC5B,CAAC;aAAM,CAAC;YACN,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,GAAG,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC,CAAC;YAE1F,IAAI,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI,MAAM,EAAE,CAAC;gBAC9C,IAAI,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;oBACvB,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,OAAiB,EAAE,OAAO,CAAC,CAAC;oBAC/C,MAAM,CAAC,SAAS,IAAI,KAAK,CAAC,OAAO,CAAC;oBAClC,IAAI,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC;oBACjC,IAAI,SAAS,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACtC,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC/C,MAAM,eAAe,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBACjE,WAAW,CAAC,aAAa,MAAM,IAAI,eAAe,EAAE,CAAC,CAAC;oBACxD,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC,SAAS,CAAC;IAC1B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;YAC3B,IAAI,KAAK,EAAE,IAAI,KAAK,eAAe,EAAE,CAAC;gBACpC,YAAY,CAAC,0BAA0B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;YAAS,CAAC;QACT,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACvB,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,KAAc;IACvC,iBAAiB,CAAC,OAAO,GAAG,KAAK,CAAC;AACpC,CAAC;AAED,SAAS,WAAW,CAClB,KAAgC,EAChC,gBAA2C;IAE3C,IAAI,gBAAgB,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACnE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,iEAAiE;IACjE,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAC9B,gBAAgB,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,oBAAoB,SAAS,EAAE,CAAC,CACrE,CAAC;IAEF,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QAC3B,+DAA+D;QAC/D,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,IAAI,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACvF,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,SAAS,CAAC,MAAmB;IACpC,MAAM,cAAc,GAA+B,EAAE,CAAC;IAEtD,sCAAsC;IACtC,IAAI,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,UAAU,KAAK,MAAM,EAAE,CAAC;QACtD,MAAM,gBAAgB,GAAe;YACnC,SAAS,EAAE,OAAgB;YAC3B,OAAO,EAAE,KAAK;YACd,IAAI,EAAE,CAAC,IAAI,EAAE,yCAAyC,EAAE,aAAa,EAAE,CAAC;SACzE,CAAC;QAEF,cAAc,CAAC,UAAU,GAAG,gBAAgB,CAAC;IAC/C,CAAC;IAED,+BAA+B;IAC/B,MAAM,UAAU,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,CAAC,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC,EAAE,CAAC;IAEvE,qEAAqE;IACrE,IAAI,MAAM,CAAC,UAAU,EAAE,UAAU,EAAE,CAAC;QAClC,UAAU,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC;IACvD,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvC,OAAO,IAAI,oBAAoB,CAAC;YAC9B,gBAAgB,EAAE,IAAI;YACtB,4BAA4B,EAAE,IAAI;YAClC,wBAAwB,EAAE,KAAK;YAC/B,UAAU;SACX,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes