gaunt-sloth-assistant 1.2.1 → 1.2.2
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/.gsloth.guidelines.md +0 -188
- package/README.md +3 -2
- package/dist/commands/initCommand.d.ts +10 -0
- package/dist/commands/initCommand.js +75 -2
- package/dist/commands/initCommand.js.map +1 -1
- package/dist/config.d.ts +11 -0
- package/dist/config.js +18 -3
- package/dist/config.js.map +1 -1
- package/dist/utils/llmUtils.d.ts +6 -6
- package/dist/utils/llmUtils.js +10 -7
- package/dist/utils/llmUtils.js.map +1 -1
- package/package.json +1 -1
package/.gsloth.guidelines.md
CHANGED
|
@@ -1,189 +1 @@
|
|
|
1
|
-
# Development Guidelines of Gaunt Sloth Assistant
|
|
2
1
|
|
|
3
|
-
Gaunt Sloth Assistant is a command-line Node.js utility helping developers to access LLM from the command line.
|
|
4
|
-
|
|
5
|
-
## Technologies Used
|
|
6
|
-
|
|
7
|
-
- NodeJS 22 (LTS)
|
|
8
|
-
- Vitest 3 for tests
|
|
9
|
-
- Typescript 5
|
|
10
|
-
- LangChain and LangGraph 0.3
|
|
11
|
-
|
|
12
|
-
Please refer to package.json to check exact versions
|
|
13
|
-
|
|
14
|
-
## Core Development Principles
|
|
15
|
-
|
|
16
|
-
Vendor and system abstractions and wrappers should be used in most cases.
|
|
17
|
-
|
|
18
|
-
### Imports
|
|
19
|
-
|
|
20
|
-
Project uses import alias with `#src/*.js` pointing to `src/` and after build resolving to generated `dist/`.
|
|
21
|
-
Please abstain from using relative imports, only use them when no other choices are available
|
|
22
|
-
(currently the only exception is entry point cli.js)
|
|
23
|
-
|
|
24
|
-
### Architecture and Flow
|
|
25
|
-
|
|
26
|
-
- Make sure proper separation of LangChain components (LLMs, chains, agents, tools)
|
|
27
|
-
- Check for clear data flow between components
|
|
28
|
-
- Ensure proper state management in LangGraph workflows
|
|
29
|
-
- Validate error handling and fallback mechanisms
|
|
30
|
-
|
|
31
|
-
### Security
|
|
32
|
-
|
|
33
|
-
- Make sure API key handling and environment variables
|
|
34
|
-
- Make sure no personal data is present in code
|
|
35
|
-
- **Make sure that API keys are NOT accidentally included into diff.**
|
|
36
|
-
- Check for proper input sanitization
|
|
37
|
-
- Verify output validation and sanitization
|
|
38
|
-
|
|
39
|
-
### Output
|
|
40
|
-
|
|
41
|
-
Use [consoleUtils.ts](src/consoleUtils.ts) to output to users.
|
|
42
|
-
Do not use console.log directly.
|
|
43
|
-
|
|
44
|
-
### System
|
|
45
|
-
|
|
46
|
-
Use [systemUtils.ts](src/systemUtils.ts) to access system variables and functions such as
|
|
47
|
-
process.env, process.stdout, etc.
|
|
48
|
-
|
|
49
|
-
### LLM
|
|
50
|
-
|
|
51
|
-
Use [llmUtils.ts](src/llmUtils.ts) to access LLM.
|
|
52
|
-
|
|
53
|
-
### Middleware
|
|
54
|
-
|
|
55
|
-
Starting with v1.0.0, Gaunt Sloth uses LangChain middleware pattern instead of hooks.
|
|
56
|
-
|
|
57
|
-
Middleware provides hooks to intercept and control agent execution at critical points:
|
|
58
|
-
- `beforeModel`: Called before model invocation
|
|
59
|
-
- `afterModel`: Called after model response
|
|
60
|
-
- `beforeAgent`: Called before agent initialization
|
|
61
|
-
- `afterAgent`: Called after agent completion
|
|
62
|
-
- `wrapModelCall`: Wrap model calls with full control
|
|
63
|
-
- `wrapToolCall`: Wrap tool calls with full control
|
|
64
|
-
|
|
65
|
-
**Predefined Middleware:**
|
|
66
|
-
- `anthropic-prompt-caching`: Reduces API costs by caching prompts (Anthropic only)
|
|
67
|
-
- `summarization`: Condenses conversation history when approaching token limits
|
|
68
|
-
|
|
69
|
-
**Configuration:**
|
|
70
|
-
- Middleware is configured in the `middleware` array in config
|
|
71
|
-
- JSON configs support predefined middleware (string or config object)
|
|
72
|
-
- JS configs support both predefined and custom middleware objects
|
|
73
|
-
|
|
74
|
-
**Implementation:**
|
|
75
|
-
- Middleware registry is in [src/middleware/registry.ts](src/middleware/registry.ts)
|
|
76
|
-
- Middleware types are in [src/middleware/types.ts](src/middleware/types.ts)
|
|
77
|
-
- Provider-specific middleware can be auto-injected via `postProcessJsonConfig()` in preset files
|
|
78
|
-
|
|
79
|
-
## Testing (Important)
|
|
80
|
-
|
|
81
|
-
Tests are located in `spec/`. Integration tests are located in `integration-tests/`.
|
|
82
|
-
|
|
83
|
-
- In spec files never import mocked files themselves, mock them, and a tested file should import them.
|
|
84
|
-
- Always import the tested file dynamically within the test.
|
|
85
|
-
- Mocks are hoisted, so it is better to simply place them at the top of the file to avoid confusion.
|
|
86
|
-
- Make sure that beforeEach is always present and always calls vi.resetAllMocks(); as a first thing.
|
|
87
|
-
- Create variables with vi.fn() without adding implementations to them, then apply these functions with vi.mock outside
|
|
88
|
-
of the describe.
|
|
89
|
-
- Apply mock implementations and return values to mocks within individual tests.
|
|
90
|
-
- When mock implementations are common for all test cases, apply them in beforeEach.
|
|
91
|
-
- Make sure test actually testing a function, rather than simply testing the mock.
|
|
92
|
-
|
|
93
|
-
Example test
|
|
94
|
-
|
|
95
|
-
```typescript
|
|
96
|
-
import {beforeEach, describe, expect, it, vi} from 'vitest';
|
|
97
|
-
|
|
98
|
-
const consoleUtilsMock = {
|
|
99
|
-
display: vi.fn(),
|
|
100
|
-
displayError: vi.fn(),
|
|
101
|
-
displayInfo: vi.fn(),
|
|
102
|
-
displayWarning: vi.fn(),
|
|
103
|
-
displaySuccess: vi.fn(),
|
|
104
|
-
displayDebug: vi.fn(),
|
|
105
|
-
};
|
|
106
|
-
vi.mock('#src/utils/consoleUtils.js', () => consoleUtilsMock);
|
|
107
|
-
|
|
108
|
-
const fsUtilsMock = {
|
|
109
|
-
existsSync: vi.fn(),
|
|
110
|
-
readFileSync: vi.fn(),
|
|
111
|
-
writeFileSync: vi.fn(),
|
|
112
|
-
};
|
|
113
|
-
vi.mock('node:fs', () => fsUtilsMock);
|
|
114
|
-
|
|
115
|
-
describe('specialUtil', () => {
|
|
116
|
-
beforeEach(() => {
|
|
117
|
-
vi.resetAllMocks(); // Always reset all mocks in beforeEach
|
|
118
|
-
|
|
119
|
-
// Set up default mock values
|
|
120
|
-
fsUtilsMock.existsSync.mockImplementation(() => true);
|
|
121
|
-
});
|
|
122
|
-
|
|
123
|
-
it('specialFunction should eventually write test contents to a file', async () => {
|
|
124
|
-
fsUtilsMock.readFileSync.mockImplementation((path: string) => {
|
|
125
|
-
if (path.includes('inputFile.txt')) return 'TEST CONTENT';
|
|
126
|
-
return '';
|
|
127
|
-
});
|
|
128
|
-
|
|
129
|
-
const {specialFunction} = await import('#src/specialUtil.js'); // Always import tested file within the test
|
|
130
|
-
|
|
131
|
-
// Function under test
|
|
132
|
-
specialFunction();
|
|
133
|
-
|
|
134
|
-
expect(fsUtilsMock.writeFileSync).toHaveBeenCalledWith('outputFile.txt', 'TEST CONTENT\nEXTRA CONTENT');
|
|
135
|
-
expect(consoleUtilsMock.displayDebug).not.toHaveBeenCalled();
|
|
136
|
-
expect(consoleUtilsMock.displayWarning).not.toHaveBeenCalled();
|
|
137
|
-
expect(consoleUtilsMock.display).not.toHaveBeenCalled();
|
|
138
|
-
expect(consoleUtilsMock.displayError).not.toHaveBeenCalled();
|
|
139
|
-
expect(consoleUtilsMock.displayInfo).not.toHaveBeenCalled();
|
|
140
|
-
expect(consoleUtilsMock.displaySuccess).toHaveBeenCalledWith('Successfully transferred to outputFile.txt');
|
|
141
|
-
});
|
|
142
|
-
});
|
|
143
|
-
```
|
|
144
|
-
|
|
145
|
-
When mocking class constructors follow this pattern:
|
|
146
|
-
|
|
147
|
-
```javascript
|
|
148
|
-
// With export default
|
|
149
|
-
const gthFileSystemToolkitGetToolsMock = vi.fn();
|
|
150
|
-
vi.mock('#src/tools/GthFileSystemToolkit.js', () => {
|
|
151
|
-
const GthFileSystemToolkit = vi.fn();
|
|
152
|
-
GthFileSystemToolkit.prototype.getTools = gthFileSystemToolkitGetToolsMock;
|
|
153
|
-
return {
|
|
154
|
-
default: GthFileSystemToolkit,
|
|
155
|
-
};
|
|
156
|
-
});
|
|
157
|
-
|
|
158
|
-
// With named exports
|
|
159
|
-
const otherToolkitMock = vi.fn();
|
|
160
|
-
vi.mock('#src/tools/OtherToolkit.js', () => {
|
|
161
|
-
const OtherToolkit = vi.fn();
|
|
162
|
-
OtherToolkit.prototype.getTools = otherToolkitMock;
|
|
163
|
-
return {
|
|
164
|
-
OtherToolkit,
|
|
165
|
-
};
|
|
166
|
-
});
|
|
167
|
-
```
|
|
168
|
-
|
|
169
|
-
### Configs in tests
|
|
170
|
-
|
|
171
|
-
When you create incomplete configs please cast them as Partial,
|
|
172
|
-
for example `Partial<RawGthConfig>`
|
|
173
|
-
and later cast them to RawGthConfig when providing them as argument to function
|
|
174
|
-
which expects full interface. Even better option is to provide all properties.
|
|
175
|
-
|
|
176
|
-
## Development Workflow
|
|
177
|
-
|
|
178
|
-
Please follow this workflow:
|
|
179
|
-
|
|
180
|
-
- Analyze requirements.
|
|
181
|
-
- Develop changes.
|
|
182
|
-
- Make sure all tests pass `npm run test` and fix if possible.
|
|
183
|
-
- Request relevant documentation if some of the test failures are unclear.
|
|
184
|
-
- Once all tests are green check lint with `npm run lint`.
|
|
185
|
-
- If any lint failures are present try fixing them with `npm run lint-n-fix`.
|
|
186
|
-
- If autofix didn't help, try fixing them yourself.
|
|
187
|
-
- Prefer testing all user outputs, including testing the absence of unexpected outputs.
|
|
188
|
-
|
|
189
|
-
---
|
package/README.md
CHANGED
|
@@ -73,7 +73,7 @@ These apply to every command:
|
|
|
73
73
|
|
|
74
74
|
### Available Commands:
|
|
75
75
|
|
|
76
|
-
- **`init`** - Initialize Gaunt Sloth in your project
|
|
76
|
+
- **`init`** - Initialize Gaunt Sloth in your project (auto-detects API keys when called without arguments)
|
|
77
77
|
- **`pr`** - ⚠️ This feature requires GitHub CLI to be installed. Review pull requests with optional requirement integration (GitHub issues or Jira).
|
|
78
78
|
- **`review`** - Review any diff or content from various sources
|
|
79
79
|
- **`ask`** - Ask questions about code or programming topics
|
|
@@ -84,7 +84,8 @@ These apply to every command:
|
|
|
84
84
|
|
|
85
85
|
**Initialize project:**
|
|
86
86
|
```bash
|
|
87
|
-
gsloth init
|
|
87
|
+
gsloth init # Auto-detect API keys and select provider
|
|
88
|
+
gsloth init anthropic # Or specify provider directly
|
|
88
89
|
```
|
|
89
90
|
|
|
90
91
|
**Review PR with requirements:**
|
|
@@ -1,4 +1,14 @@
|
|
|
1
1
|
import { Command } from 'commander';
|
|
2
|
+
/**
|
|
3
|
+
* Map of provider names to their expected API key environment variable names.
|
|
4
|
+
* vertexai uses gcloud auth and does not require an API key env var.
|
|
5
|
+
*/
|
|
6
|
+
export declare const providerApiKeyMap: Record<string, string | null>;
|
|
7
|
+
/**
|
|
8
|
+
* Detects which providers have API keys set in the environment.
|
|
9
|
+
* Returns list of provider names with available keys.
|
|
10
|
+
*/
|
|
11
|
+
export declare function detectAvailableProviders(): string[];
|
|
2
12
|
/**
|
|
3
13
|
* Adds the init command to the program
|
|
4
14
|
* @param program - The commander program
|
|
@@ -1,5 +1,64 @@
|
|
|
1
1
|
import { availableDefaultConfigs, createProjectConfig } from '#src/config.js';
|
|
2
|
+
import { displayInfo, displayWarning } from '#src/utils/consoleUtils.js';
|
|
3
|
+
import { createInterface, env, stdin, stdout } from '#src/utils/systemUtils.js';
|
|
2
4
|
import { Argument } from 'commander';
|
|
5
|
+
/**
|
|
6
|
+
* Map of provider names to their expected API key environment variable names.
|
|
7
|
+
* vertexai uses gcloud auth and does not require an API key env var.
|
|
8
|
+
*/
|
|
9
|
+
export const providerApiKeyMap = {
|
|
10
|
+
anthropic: 'ANTHROPIC_API_KEY',
|
|
11
|
+
openai: 'OPENAI_API_KEY',
|
|
12
|
+
'google-genai': 'GOOGLE_API_KEY',
|
|
13
|
+
groq: 'GROQ_API_KEY',
|
|
14
|
+
deepseek: 'DEEPSEEK_API_KEY',
|
|
15
|
+
xai: 'XAI_API_KEY',
|
|
16
|
+
openrouter: 'OPEN_ROUTER_API_KEY',
|
|
17
|
+
vertexai: null,
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* Detects which providers have API keys set in the environment.
|
|
21
|
+
* Returns list of provider names with available keys.
|
|
22
|
+
*/
|
|
23
|
+
export function detectAvailableProviders() {
|
|
24
|
+
const available = [];
|
|
25
|
+
for (const provider of availableDefaultConfigs) {
|
|
26
|
+
const keyName = providerApiKeyMap[provider];
|
|
27
|
+
if (keyName === null) {
|
|
28
|
+
// Provider like vertexai that doesn't need an API key
|
|
29
|
+
available.push(provider);
|
|
30
|
+
}
|
|
31
|
+
else if (keyName && env[keyName]) {
|
|
32
|
+
available.push(provider);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
return available;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Prompts the user to select a provider from a numbered list.
|
|
39
|
+
*/
|
|
40
|
+
async function promptProviderSelection(providers) {
|
|
41
|
+
displayInfo('Available providers:');
|
|
42
|
+
providers.forEach((provider, index) => {
|
|
43
|
+
const keyName = providerApiKeyMap[provider];
|
|
44
|
+
const keyInfo = keyName ? ` (${keyName})` : ' (gcloud auth)';
|
|
45
|
+
displayInfo(` ${index + 1}. ${provider}${keyInfo}`);
|
|
46
|
+
});
|
|
47
|
+
const rl = createInterface({ input: stdin, output: stdout });
|
|
48
|
+
try {
|
|
49
|
+
const answer = await rl.question('\nSelect a provider by number: ');
|
|
50
|
+
const selection = parseInt(answer.trim(), 10);
|
|
51
|
+
if (isNaN(selection) || selection < 1 || selection > providers.length) {
|
|
52
|
+
displayWarning(`Invalid selection. Please enter a number between 1 and ${providers.length}.`);
|
|
53
|
+
rl.close();
|
|
54
|
+
return promptProviderSelection(providers);
|
|
55
|
+
}
|
|
56
|
+
return providers[selection - 1];
|
|
57
|
+
}
|
|
58
|
+
finally {
|
|
59
|
+
rl.close();
|
|
60
|
+
}
|
|
61
|
+
}
|
|
3
62
|
/**
|
|
4
63
|
* Adds the init command to the program
|
|
5
64
|
* @param program - The commander program
|
|
@@ -8,9 +67,23 @@ export function initCommand(program) {
|
|
|
8
67
|
program
|
|
9
68
|
.command('init')
|
|
10
69
|
.description('Initialize the Gaunt Sloth Assistant in your project. This will write necessary config files.')
|
|
11
|
-
.addArgument(new Argument('
|
|
70
|
+
.addArgument(new Argument('[type]', 'Config type (optional, will auto-detect if omitted)').choices(availableDefaultConfigs))
|
|
12
71
|
.action(async (config) => {
|
|
13
|
-
|
|
72
|
+
if (config) {
|
|
73
|
+
await createProjectConfig(config);
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
const available = detectAvailableProviders();
|
|
77
|
+
if (available.length === 0) {
|
|
78
|
+
displayWarning('No API keys detected in environment. Available providers: ' +
|
|
79
|
+
availableDefaultConfigs.join(', '));
|
|
80
|
+
displayInfo('Please set an API key environment variable and try again, or run:');
|
|
81
|
+
displayInfo(' gsloth init <type>');
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
84
|
+
const selected = await promptProviderSelection(available);
|
|
85
|
+
await createProjectConfig(selected);
|
|
86
|
+
}
|
|
14
87
|
});
|
|
15
88
|
}
|
|
16
89
|
//# sourceMappingURL=initCommand.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"initCommand.js","sourceRoot":"","sources":["../../src/commands/initCommand.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAE,QAAQ,EAAW,MAAM,WAAW,CAAC;AAE9C;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,OAAgB;IAC1C,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CACV,+FAA+F,CAChG;SACA,WAAW,
|
|
1
|
+
{"version":3,"file":"initCommand.js","sourceRoot":"","sources":["../../src/commands/initCommand.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
CHANGED
|
@@ -53,6 +53,12 @@ export interface GthConfig {
|
|
|
53
53
|
timezone?: string;
|
|
54
54
|
};
|
|
55
55
|
projectReviewInstructions: string;
|
|
56
|
+
/**
|
|
57
|
+
* If true, only use user-provided system prompts. Do not fall back to the
|
|
58
|
+
* bundled `.gsloth.*.md` prompt files shipped with the installation.
|
|
59
|
+
* This applies to all `.gsloth.*.md` files (backstory, system, chat, code, guidelines, review).
|
|
60
|
+
*/
|
|
61
|
+
noDefaultPrompts?: boolean;
|
|
56
62
|
filesystem: string[] | 'all' | 'read' | 'none';
|
|
57
63
|
builtInTools?: string[];
|
|
58
64
|
tools?: StructuredToolInterface[] | BaseToolkit[] | ServerTool[];
|
|
@@ -470,4 +476,9 @@ export declare function initConfig(commandLineConfigOverrides: CommandLineConfig
|
|
|
470
476
|
*/
|
|
471
477
|
export declare function tryJsonConfig(jsonConfig: RawGthConfig, commandLineConfigOverrides: CommandLineConfigOverrides): Promise<GthConfig>;
|
|
472
478
|
export declare function createProjectConfig(configType: string): Promise<void>;
|
|
479
|
+
/**
|
|
480
|
+
* Ensures that the .gsloth directory exists in the project root.
|
|
481
|
+
* Creates it if it does not exist.
|
|
482
|
+
*/
|
|
483
|
+
export declare function ensureGslothDir(): void;
|
|
473
484
|
export declare function writeProjectReviewPreamble(): void;
|
package/dist/config.js
CHANGED
|
@@ -8,12 +8,13 @@
|
|
|
8
8
|
*
|
|
9
9
|
* Some config params can be overriden from command line, see {@link CommandLineConfigOverrides}
|
|
10
10
|
*/
|
|
11
|
-
import { PROJECT_GUIDELINES, PROJECT_REVIEW_INSTRUCTIONS, USER_PROJECT_CONFIG_JS, USER_PROJECT_CONFIG_JSON, USER_PROJECT_CONFIG_MJS, } from '#src/constants.js';
|
|
11
|
+
import { GSLOTH_DIR, PROJECT_GUIDELINES, PROJECT_REVIEW_INSTRUCTIONS, USER_PROJECT_CONFIG_JS, USER_PROJECT_CONFIG_JSON, USER_PROJECT_CONFIG_MJS, } from '#src/constants.js';
|
|
12
12
|
import { StatusLevel } from '#src/core/types.js';
|
|
13
13
|
import { displayDebug, displayError, displayInfo, displayWarning, setConsoleLevel, } from '#src/utils/consoleUtils.js';
|
|
14
14
|
import { getGslothConfigReadPath, getGslothConfigWritePath, importExternalFile, writeFileIfNotExistsWithMessages, } from '#src/utils/fileUtils.js';
|
|
15
|
-
import { error, exit, isTTY, setUseColour } from '#src/utils/systemUtils.js';
|
|
16
|
-
import { existsSync, readFileSync } from 'node:fs';
|
|
15
|
+
import { error, exit, getProjectDir, isTTY, setUseColour } from '#src/utils/systemUtils.js';
|
|
16
|
+
import { existsSync, mkdirSync, readFileSync } from 'node:fs';
|
|
17
|
+
import { resolve } from 'node:path';
|
|
17
18
|
export const availableDefaultConfigs = [
|
|
18
19
|
'vertexai',
|
|
19
20
|
'anthropic',
|
|
@@ -245,6 +246,8 @@ export async function createProjectConfig(configType) {
|
|
|
245
246
|
displayError(`Unknown config type: ${configType}. Available options: ${availableDefaultConfigs.join(', ')}`);
|
|
246
247
|
exit(1);
|
|
247
248
|
}
|
|
249
|
+
// Ensure .gsloth directory exists (folder configuration mode)
|
|
250
|
+
ensureGslothDir();
|
|
248
251
|
displayInfo(`Setting up your project\n`);
|
|
249
252
|
writeProjectReviewPreamble();
|
|
250
253
|
displayWarning(`Make sure you add as much detail as possible to your ${PROJECT_GUIDELINES}.\n`);
|
|
@@ -252,6 +255,18 @@ export async function createProjectConfig(configType) {
|
|
|
252
255
|
const vendorConfig = await import(`./presets/${configType}.js`);
|
|
253
256
|
vendorConfig.init(getGslothConfigWritePath(USER_PROJECT_CONFIG_JSON));
|
|
254
257
|
}
|
|
258
|
+
/**
|
|
259
|
+
* Ensures that the .gsloth directory exists in the project root.
|
|
260
|
+
* Creates it if it does not exist.
|
|
261
|
+
*/
|
|
262
|
+
export function ensureGslothDir() {
|
|
263
|
+
const projectDir = getProjectDir();
|
|
264
|
+
const gslothDirPath = resolve(projectDir, GSLOTH_DIR);
|
|
265
|
+
if (!existsSync(gslothDirPath)) {
|
|
266
|
+
mkdirSync(gslothDirPath, { recursive: true });
|
|
267
|
+
displayInfo(`Created ${GSLOTH_DIR} directory`);
|
|
268
|
+
}
|
|
269
|
+
}
|
|
255
270
|
export function writeProjectReviewPreamble() {
|
|
256
271
|
const guidelinesPath = getGslothConfigWritePath(PROJECT_GUIDELINES);
|
|
257
272
|
const reviewPath = getGslothConfigWritePath(PROJECT_REVIEW_INSTRUCTIONS);
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/llmUtils.d.ts
CHANGED
|
@@ -7,12 +7,12 @@ import { GthConfig } from '#src/config.js';
|
|
|
7
7
|
* and in another prototype project where I was importing Gaunt Sloth.
|
|
8
8
|
*/
|
|
9
9
|
export declare function getNewRunnableConfig(): RunnableConfig;
|
|
10
|
-
export declare function readBackstory(config: Pick<GthConfig, 'identityProfile'>): string;
|
|
11
|
-
export declare function readGuidelines(config: Pick<GthConfig, 'projectGuidelines' | 'includeCurrentDateAfterGuidelines' | 'organization' | 'identityProfile'> | string): string;
|
|
12
|
-
export declare function readReviewInstructions(config: Pick<GthConfig, 'projectReviewInstructions' | 'identityProfile'> | string): string;
|
|
13
|
-
export declare function readSystemPrompt(config: Pick<GthConfig, 'identityProfile'>): string;
|
|
14
|
-
export declare function readChatPrompt(config: Pick<GthConfig, 'identityProfile'>): string;
|
|
15
|
-
export declare function readCodePrompt(config: Pick<GthConfig, 'identityProfile'>): string;
|
|
10
|
+
export declare function readBackstory(config: Pick<GthConfig, 'identityProfile' | 'noDefaultPrompts'>): string;
|
|
11
|
+
export declare function readGuidelines(config: Pick<GthConfig, 'projectGuidelines' | 'includeCurrentDateAfterGuidelines' | 'organization' | 'identityProfile' | 'noDefaultPrompts'> | string): string;
|
|
12
|
+
export declare function readReviewInstructions(config: Pick<GthConfig, 'projectReviewInstructions' | 'identityProfile' | 'noDefaultPrompts'> | string): string;
|
|
13
|
+
export declare function readSystemPrompt(config: Pick<GthConfig, 'identityProfile' | 'noDefaultPrompts'>): string;
|
|
14
|
+
export declare function readChatPrompt(config: Pick<GthConfig, 'identityProfile' | 'noDefaultPrompts'>): string;
|
|
15
|
+
export declare function readCodePrompt(config: Pick<GthConfig, 'identityProfile' | 'noDefaultPrompts'>): string;
|
|
16
16
|
/**
|
|
17
17
|
* Wraps content within randomized block
|
|
18
18
|
*/
|
package/dist/utils/llmUtils.js
CHANGED
|
@@ -17,13 +17,13 @@ export function getNewRunnableConfig() {
|
|
|
17
17
|
};
|
|
18
18
|
}
|
|
19
19
|
export function readBackstory(config) {
|
|
20
|
-
return readPromptFile(GSLOTH_BACKSTORY, config.identityProfile);
|
|
20
|
+
return readPromptFile(GSLOTH_BACKSTORY, config.identityProfile, config.noDefaultPrompts);
|
|
21
21
|
}
|
|
22
22
|
export function readGuidelines(config) {
|
|
23
23
|
if (typeof config === 'string') {
|
|
24
24
|
return readPromptFile(config, undefined);
|
|
25
25
|
}
|
|
26
|
-
const guidelines = readPromptFile(config.projectGuidelines, config.identityProfile);
|
|
26
|
+
const guidelines = readPromptFile(config.projectGuidelines, config.identityProfile, config.noDefaultPrompts);
|
|
27
27
|
if (config.includeCurrentDateAfterGuidelines) {
|
|
28
28
|
const currentDate = new Date();
|
|
29
29
|
const orgName = config.organization?.name;
|
|
@@ -50,22 +50,25 @@ export function readReviewInstructions(config) {
|
|
|
50
50
|
if (typeof config === 'string') {
|
|
51
51
|
return readPromptFile(config, undefined);
|
|
52
52
|
}
|
|
53
|
-
return readPromptFile(config.projectReviewInstructions, config.identityProfile);
|
|
53
|
+
return readPromptFile(config.projectReviewInstructions, config.identityProfile, config.noDefaultPrompts);
|
|
54
54
|
}
|
|
55
55
|
export function readSystemPrompt(config) {
|
|
56
|
-
return readPromptFile(GSLOTH_SYSTEM_PROMPT, config.identityProfile);
|
|
56
|
+
return readPromptFile(GSLOTH_SYSTEM_PROMPT, config.identityProfile, config.noDefaultPrompts);
|
|
57
57
|
}
|
|
58
58
|
export function readChatPrompt(config) {
|
|
59
|
-
return readPromptFile(GSLOTH_CHAT_PROMPT, config.identityProfile);
|
|
59
|
+
return readPromptFile(GSLOTH_CHAT_PROMPT, config.identityProfile, config.noDefaultPrompts);
|
|
60
60
|
}
|
|
61
61
|
export function readCodePrompt(config) {
|
|
62
|
-
return readPromptFile(GSLOTH_CODE_PROMPT, config.identityProfile);
|
|
62
|
+
return readPromptFile(GSLOTH_CODE_PROMPT, config.identityProfile, config.noDefaultPrompts);
|
|
63
63
|
}
|
|
64
|
-
function readPromptFile(filename, identityProfile) {
|
|
64
|
+
function readPromptFile(filename, identityProfile, noDefaultPrompts) {
|
|
65
65
|
const path = getGslothConfigReadPath(filename, identityProfile);
|
|
66
66
|
if (existsSync(path)) {
|
|
67
67
|
return readFileSync(path, { encoding: 'utf8' });
|
|
68
68
|
}
|
|
69
|
+
if (noDefaultPrompts) {
|
|
70
|
+
return '';
|
|
71
|
+
}
|
|
69
72
|
return readFileFromInstallDir(filename);
|
|
70
73
|
}
|
|
71
74
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llmUtils.js","sourceRoot":"","sources":["../../src/utils/llmUtils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAC1F,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAG3D;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB;IAClC,OAAO;QACL,cAAc,EAAE,IAAI;QACpB,YAAY,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,EAAE;KAC1C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa,
|
|
1
|
+
{"version":3,"file":"llmUtils.js","sourceRoot":"","sources":["../../src/utils/llmUtils.ts"],"names":[],"mappings":"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"}
|