@diff-review-system/drs 1.0.0 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.opencode/agent/describe/pr-describer.md +221 -0
- package/.opencode/agent/review/documentation.md +56 -0
- package/.opencode/agent/review/performance.md +32 -130
- package/.opencode/agent/review/quality.md +36 -104
- package/.opencode/agent/review/security.md +32 -94
- package/.opencode/agent/review/style.md +26 -10
- package/.opencode/agent/review/unified-reviewer.md +74 -0
- package/.opencode/opencode.jsonc +4 -41
- package/.opencode/tool/write_json_output.ts +24 -0
- package/README.md +215 -82
- package/dist/ci/runner.d.ts.map +1 -1
- package/dist/ci/runner.js +4 -4
- package/dist/ci/runner.js.map +1 -1
- package/dist/cli/describe-mr.d.ts +11 -0
- package/dist/cli/describe-mr.d.ts.map +1 -0
- package/dist/cli/describe-mr.js +104 -0
- package/dist/cli/describe-mr.js.map +1 -0
- package/dist/cli/describe-pr.d.ts +12 -0
- package/dist/cli/describe-pr.d.ts.map +1 -0
- package/dist/cli/describe-pr.js +105 -0
- package/dist/cli/describe-pr.js.map +1 -0
- package/dist/cli/index.js +234 -20
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/init.d.ts +1 -1
- package/dist/cli/init.d.ts.map +1 -1
- package/dist/cli/init.js +337 -120
- package/dist/cli/init.js.map +1 -1
- package/dist/cli/post-comments.d.ts +15 -0
- package/dist/cli/post-comments.d.ts.map +1 -0
- package/dist/cli/post-comments.js +216 -0
- package/dist/cli/post-comments.js.map +1 -0
- package/dist/cli/review-local.d.ts +3 -0
- package/dist/cli/review-local.d.ts.map +1 -1
- package/dist/cli/review-local.js +46 -63
- package/dist/cli/review-local.js.map +1 -1
- package/dist/cli/review-mr.d.ts +7 -0
- package/dist/cli/review-mr.d.ts.map +1 -1
- package/dist/cli/review-mr.js +88 -117
- package/dist/cli/review-mr.js.map +1 -1
- package/dist/cli/review-pr.d.ts +6 -0
- package/dist/cli/review-pr.d.ts.map +1 -1
- package/dist/cli/review-pr.js +81 -114
- package/dist/cli/review-pr.js.map +1 -1
- package/dist/cli/show-changes.d.ts +15 -0
- package/dist/cli/show-changes.d.ts.map +1 -0
- package/dist/cli/show-changes.js +184 -0
- package/dist/cli/show-changes.js.map +1 -0
- package/dist/github/client.d.ts +199 -4
- package/dist/github/client.d.ts.map +1 -1
- package/dist/github/client.js +37 -2
- package/dist/github/client.js.map +1 -1
- package/dist/github/client.test.d.ts +2 -0
- package/dist/github/client.test.d.ts.map +1 -0
- package/dist/github/client.test.js +206 -0
- package/dist/github/client.test.js.map +1 -0
- package/dist/github/platform-adapter.d.ts +31 -0
- package/dist/github/platform-adapter.d.ts.map +1 -0
- package/dist/github/platform-adapter.js +129 -0
- package/dist/github/platform-adapter.js.map +1 -0
- package/dist/github/platform-adapter.test.d.ts +2 -0
- package/dist/github/platform-adapter.test.d.ts.map +1 -0
- package/dist/github/platform-adapter.test.js +40 -0
- package/dist/github/platform-adapter.test.js.map +1 -0
- package/dist/gitlab/client.d.ts +12 -0
- package/dist/gitlab/client.d.ts.map +1 -1
- package/dist/gitlab/client.js +19 -1
- package/dist/gitlab/client.js.map +1 -1
- package/dist/gitlab/diff-parser.test.d.ts +2 -0
- package/dist/gitlab/diff-parser.test.d.ts.map +1 -0
- package/dist/gitlab/diff-parser.test.js +315 -0
- package/dist/gitlab/diff-parser.test.js.map +1 -0
- package/dist/gitlab/platform-adapter.d.ts +27 -0
- package/dist/gitlab/platform-adapter.d.ts.map +1 -0
- package/dist/gitlab/platform-adapter.js +121 -0
- package/dist/gitlab/platform-adapter.js.map +1 -0
- package/dist/gitlab/platform-adapter.test.d.ts +2 -0
- package/dist/gitlab/platform-adapter.test.d.ts.map +1 -0
- package/dist/gitlab/platform-adapter.test.js +21 -0
- package/dist/gitlab/platform-adapter.test.js.map +1 -0
- package/dist/index.test.d.ts +2 -0
- package/dist/index.test.d.ts.map +1 -0
- package/dist/index.test.js +7 -0
- package/dist/index.test.js.map +1 -0
- package/dist/lib/change-summary.d.ts +8 -0
- package/dist/lib/change-summary.d.ts.map +1 -0
- package/dist/lib/change-summary.js +2 -0
- package/dist/lib/change-summary.js.map +1 -0
- package/dist/lib/code-quality-report.d.ts +44 -0
- package/dist/lib/code-quality-report.d.ts.map +1 -0
- package/dist/lib/code-quality-report.js +62 -0
- package/dist/lib/code-quality-report.js.map +1 -0
- package/dist/lib/code-quality-report.test.d.ts +2 -0
- package/dist/lib/code-quality-report.test.d.ts.map +1 -0
- package/dist/lib/code-quality-report.test.js +327 -0
- package/dist/lib/code-quality-report.test.js.map +1 -0
- package/dist/{gitlab → lib}/comment-formatter.d.ts +6 -3
- package/dist/lib/comment-formatter.d.ts.map +1 -0
- package/dist/{gitlab → lib}/comment-formatter.js +63 -16
- package/dist/lib/comment-formatter.js.map +1 -0
- package/dist/lib/comment-formatter.test.d.ts +2 -0
- package/dist/lib/comment-formatter.test.d.ts.map +1 -0
- package/dist/lib/comment-formatter.test.js +607 -0
- package/dist/lib/comment-formatter.test.js.map +1 -0
- package/dist/lib/comment-manager.d.ts +61 -0
- package/dist/lib/comment-manager.d.ts.map +1 -0
- package/dist/lib/comment-manager.js +91 -0
- package/dist/lib/comment-manager.js.map +1 -0
- package/dist/lib/comment-manager.test.d.ts +2 -0
- package/dist/lib/comment-manager.test.d.ts.map +1 -0
- package/dist/lib/comment-manager.test.js +618 -0
- package/dist/lib/comment-manager.test.js.map +1 -0
- package/dist/lib/comment-poster.d.ts +21 -0
- package/dist/lib/comment-poster.d.ts.map +1 -0
- package/dist/lib/comment-poster.js +96 -0
- package/dist/lib/comment-poster.js.map +1 -0
- package/dist/lib/comment-poster.test.d.ts +5 -0
- package/dist/lib/comment-poster.test.d.ts.map +1 -0
- package/dist/lib/comment-poster.test.js +215 -0
- package/dist/lib/comment-poster.test.js.map +1 -0
- package/dist/lib/config-model-overrides.test.d.ts +12 -0
- package/dist/lib/config-model-overrides.test.d.ts.map +1 -0
- package/dist/lib/config-model-overrides.test.js +254 -0
- package/dist/lib/config-model-overrides.test.js.map +1 -0
- package/dist/lib/config.d.ts +93 -8
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +178 -25
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/config.test.d.ts +2 -0
- package/dist/lib/config.test.d.ts.map +1 -0
- package/dist/lib/config.test.js +36 -0
- package/dist/lib/config.test.js.map +1 -0
- package/dist/lib/context-compression.d.ts +19 -0
- package/dist/lib/context-compression.d.ts.map +1 -0
- package/dist/lib/context-compression.js +170 -0
- package/dist/lib/context-compression.js.map +1 -0
- package/dist/lib/context-compression.test.d.ts +2 -0
- package/dist/lib/context-compression.test.d.ts.map +1 -0
- package/dist/lib/context-compression.test.js +33 -0
- package/dist/lib/context-compression.test.js.map +1 -0
- package/dist/lib/context-loader.d.ts +29 -0
- package/dist/lib/context-loader.d.ts.map +1 -0
- package/dist/lib/context-loader.js +75 -0
- package/dist/lib/context-loader.js.map +1 -0
- package/dist/lib/context-loader.test.d.ts +2 -0
- package/dist/lib/context-loader.test.d.ts.map +1 -0
- package/dist/lib/context-loader.test.js +207 -0
- package/dist/lib/context-loader.test.js.map +1 -0
- package/dist/lib/describe-core.d.ts +9 -0
- package/dist/lib/describe-core.d.ts.map +1 -0
- package/dist/lib/describe-core.js +71 -0
- package/dist/lib/describe-core.js.map +1 -0
- package/dist/lib/describe-core.test.d.ts +2 -0
- package/dist/lib/describe-core.test.d.ts.map +1 -0
- package/dist/lib/describe-core.test.js +208 -0
- package/dist/lib/describe-core.test.js.map +1 -0
- package/dist/lib/describe-output-path.test.d.ts +2 -0
- package/dist/lib/describe-output-path.test.d.ts.map +1 -0
- package/dist/lib/describe-output-path.test.js +51 -0
- package/dist/lib/describe-output-path.test.js.map +1 -0
- package/dist/lib/describe-parser.d.ts +3 -0
- package/dist/lib/describe-parser.d.ts.map +1 -0
- package/dist/lib/describe-parser.js +163 -0
- package/dist/lib/describe-parser.js.map +1 -0
- package/dist/lib/describe-parser.test.d.ts +2 -0
- package/dist/lib/describe-parser.test.d.ts.map +1 -0
- package/dist/lib/describe-parser.test.js +282 -0
- package/dist/lib/describe-parser.test.js.map +1 -0
- package/dist/lib/description-executor.d.ts +22 -0
- package/dist/lib/description-executor.d.ts.map +1 -0
- package/dist/lib/description-executor.js +72 -0
- package/dist/lib/description-executor.js.map +1 -0
- package/dist/lib/description-formatter.d.ts +37 -0
- package/dist/lib/description-formatter.d.ts.map +1 -0
- package/dist/lib/description-formatter.js +219 -0
- package/dist/lib/description-formatter.js.map +1 -0
- package/dist/{gitlab → lib}/diff-parser.d.ts +11 -0
- package/dist/lib/diff-parser.d.ts.map +1 -0
- package/dist/{gitlab → lib}/diff-parser.js +40 -3
- package/dist/lib/diff-parser.js.map +1 -0
- package/dist/lib/issue-parser.d.ts +29 -0
- package/dist/lib/issue-parser.d.ts.map +1 -0
- package/dist/lib/issue-parser.js +153 -0
- package/dist/lib/issue-parser.js.map +1 -0
- package/dist/lib/issue-parser.test.d.ts +2 -0
- package/dist/lib/issue-parser.test.d.ts.map +1 -0
- package/dist/lib/issue-parser.test.js +281 -0
- package/dist/lib/issue-parser.test.js.map +1 -0
- package/dist/lib/json-output-schema.d.ts +207 -0
- package/dist/lib/json-output-schema.d.ts.map +1 -0
- package/dist/lib/json-output-schema.js +124 -0
- package/dist/lib/json-output-schema.js.map +1 -0
- package/dist/lib/json-output-schema.test.d.ts +2 -0
- package/dist/lib/json-output-schema.test.d.ts.map +1 -0
- package/dist/lib/json-output-schema.test.js +92 -0
- package/dist/lib/json-output-schema.test.js.map +1 -0
- package/dist/lib/json-output.d.ts +43 -0
- package/dist/lib/json-output.d.ts.map +1 -0
- package/dist/lib/json-output.js +34 -0
- package/dist/lib/json-output.js.map +1 -0
- package/dist/lib/output-paths.d.ts +6 -0
- package/dist/lib/output-paths.d.ts.map +1 -0
- package/dist/lib/output-paths.js +5 -0
- package/dist/lib/output-paths.js.map +1 -0
- package/dist/lib/platform-client.d.ts +130 -0
- package/dist/lib/platform-client.d.ts.map +1 -0
- package/dist/lib/platform-client.js +8 -0
- package/dist/lib/platform-client.js.map +1 -0
- package/dist/lib/position-validator.d.ts +36 -0
- package/dist/lib/position-validator.d.ts.map +1 -0
- package/dist/lib/position-validator.js +43 -0
- package/dist/lib/position-validator.js.map +1 -0
- package/dist/lib/repository-validator.d.ts +52 -0
- package/dist/lib/repository-validator.d.ts.map +1 -0
- package/dist/lib/repository-validator.js +219 -0
- package/dist/lib/repository-validator.js.map +1 -0
- package/dist/lib/repository-validator.test.d.ts +5 -0
- package/dist/lib/repository-validator.test.d.ts.map +1 -0
- package/dist/lib/repository-validator.test.js +341 -0
- package/dist/lib/repository-validator.test.js.map +1 -0
- package/dist/lib/review-core.d.ts +66 -0
- package/dist/lib/review-core.d.ts.map +1 -0
- package/dist/lib/review-core.js +449 -0
- package/dist/lib/review-core.js.map +1 -0
- package/dist/lib/review-core.test.d.ts +2 -0
- package/dist/lib/review-core.test.d.ts.map +1 -0
- package/dist/lib/review-core.test.js +552 -0
- package/dist/lib/review-core.test.js.map +1 -0
- package/dist/lib/review-orchestrator.d.ts +77 -0
- package/dist/lib/review-orchestrator.d.ts.map +1 -0
- package/dist/lib/review-orchestrator.js +124 -0
- package/dist/lib/review-orchestrator.js.map +1 -0
- package/dist/lib/review-orchestrator.test.d.ts +2 -0
- package/dist/lib/review-orchestrator.test.d.ts.map +1 -0
- package/dist/lib/review-orchestrator.test.js +413 -0
- package/dist/lib/review-orchestrator.test.js.map +1 -0
- package/dist/lib/review-output-path.test.d.ts +2 -0
- package/dist/lib/review-output-path.test.d.ts.map +1 -0
- package/dist/lib/review-output-path.test.js +83 -0
- package/dist/lib/review-output-path.test.js.map +1 -0
- package/dist/lib/review-parser.d.ts +2 -0
- package/dist/lib/review-parser.d.ts.map +1 -0
- package/dist/lib/review-parser.js +100 -0
- package/dist/lib/review-parser.js.map +1 -0
- package/dist/lib/unified-review-executor.d.ts +49 -0
- package/dist/lib/unified-review-executor.d.ts.map +1 -0
- package/dist/lib/unified-review-executor.js +158 -0
- package/dist/lib/unified-review-executor.js.map +1 -0
- package/dist/lib/unified-review-executor.test.d.ts +5 -0
- package/dist/lib/unified-review-executor.test.d.ts.map +1 -0
- package/dist/lib/unified-review-executor.test.js +344 -0
- package/dist/lib/unified-review-executor.test.js.map +1 -0
- package/dist/lib/write-json-output.d.ts +13 -0
- package/dist/lib/write-json-output.d.ts.map +1 -0
- package/dist/lib/write-json-output.js +37 -0
- package/dist/lib/write-json-output.js.map +1 -0
- package/dist/opencode/agent-loader.d.ts +3 -4
- package/dist/opencode/agent-loader.d.ts.map +1 -1
- package/dist/opencode/agent-loader.js +51 -42
- package/dist/opencode/agent-loader.js.map +1 -1
- package/dist/opencode/agent-skill-overlay.d.ts +11 -0
- package/dist/opencode/agent-skill-overlay.d.ts.map +1 -0
- package/dist/opencode/agent-skill-overlay.js +164 -0
- package/dist/opencode/agent-skill-overlay.js.map +1 -0
- package/dist/opencode/client.d.ts +14 -5
- package/dist/opencode/client.d.ts.map +1 -1
- package/dist/opencode/client.js +311 -32
- package/dist/opencode/client.js.map +1 -1
- package/dist/opencode/client.test.d.ts +2 -0
- package/dist/opencode/client.test.d.ts.map +1 -0
- package/dist/opencode/client.test.js +317 -0
- package/dist/opencode/client.test.js.map +1 -0
- package/dist/opencode/opencode-paths.d.ts +2 -0
- package/dist/opencode/opencode-paths.d.ts.map +1 -0
- package/dist/opencode/opencode-paths.js +7 -0
- package/dist/opencode/opencode-paths.js.map +1 -0
- package/dist/opencode/skill-loader.d.ts +6 -0
- package/dist/opencode/skill-loader.d.ts.map +1 -0
- package/dist/opencode/skill-loader.js +36 -0
- package/dist/opencode/skill-loader.js.map +1 -0
- package/package.json +29 -20
- package/.opencode/agent/github-reviewer.md +0 -62
- package/.opencode/agent/gitlab-reviewer.md +0 -62
- package/.opencode/agent/local-reviewer.md +0 -71
- package/dist/gitlab/comment-formatter.d.ts.map +0 -1
- package/dist/gitlab/comment-formatter.js.map +0 -1
- package/dist/gitlab/diff-parser.d.ts.map +0 -1
- package/dist/gitlab/diff-parser.js.map +0 -1
package/dist/cli/init.js
CHANGED
|
@@ -1,28 +1,97 @@
|
|
|
1
1
|
import { existsSync, mkdirSync, writeFileSync } from 'fs';
|
|
2
2
|
import { join } from 'path';
|
|
3
|
+
import * as readline from 'readline';
|
|
3
4
|
import chalk from 'chalk';
|
|
4
|
-
|
|
5
|
-
|
|
5
|
+
/**
|
|
6
|
+
* Interactive prompt helper using readline
|
|
7
|
+
*/
|
|
8
|
+
function createPrompt() {
|
|
9
|
+
const rl = readline.createInterface({
|
|
10
|
+
input: process.stdin,
|
|
11
|
+
output: process.stdout,
|
|
12
|
+
});
|
|
13
|
+
return {
|
|
14
|
+
ask: (question, defaultValue) => {
|
|
15
|
+
const defaultHint = defaultValue ? ` (${defaultValue})` : '';
|
|
16
|
+
return new Promise((resolve) => {
|
|
17
|
+
rl.question(`${question}${defaultHint}: `, (answer) => {
|
|
18
|
+
resolve(answer.trim() || defaultValue || '');
|
|
19
|
+
});
|
|
20
|
+
});
|
|
21
|
+
},
|
|
22
|
+
confirm: (question, defaultValue = false) => {
|
|
23
|
+
const hint = defaultValue ? '(Y/n)' : '(y/N)';
|
|
24
|
+
return new Promise((resolve) => {
|
|
25
|
+
rl.question(`${question} ${hint}: `, (answer) => {
|
|
26
|
+
const normalized = answer.trim().toLowerCase();
|
|
27
|
+
if (normalized === '') {
|
|
28
|
+
resolve(defaultValue);
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
resolve(normalized === 'y' || normalized === 'yes');
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
});
|
|
35
|
+
},
|
|
36
|
+
close: () => rl.close(),
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Generate drs.config.yaml content from init config
|
|
41
|
+
*/
|
|
42
|
+
function generateConfigYaml(config) {
|
|
43
|
+
let yaml = `# DRS Configuration
|
|
44
|
+
# Generated by: drs init
|
|
45
|
+
# Documentation: https://github.com/manojlds/drs
|
|
6
46
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
47
|
+
`;
|
|
48
|
+
// Add custom provider if configured
|
|
49
|
+
if (config.useCustomProvider && config.provider) {
|
|
50
|
+
yaml += `# Custom AI Provider
|
|
51
|
+
opencode:
|
|
52
|
+
provider:
|
|
53
|
+
${config.provider.name}:
|
|
54
|
+
npm: "${config.provider.npm}"
|
|
55
|
+
name: "${config.provider.name}"
|
|
56
|
+
options:
|
|
57
|
+
baseURL: "${config.provider.baseURL}"
|
|
58
|
+
apiKey: "{env:${config.provider.apiKeyEnvVar}}"
|
|
59
|
+
models:
|
|
60
|
+
${config.provider.modelId}:
|
|
61
|
+
name: "${config.provider.modelDisplayName}"
|
|
14
62
|
|
|
15
|
-
|
|
16
|
-
|
|
63
|
+
`;
|
|
64
|
+
}
|
|
65
|
+
yaml += `review:
|
|
66
|
+
# Default model for all agents
|
|
67
|
+
default:
|
|
68
|
+
model: ${config.defaultModel}
|
|
17
69
|
|
|
18
|
-
# Review
|
|
19
|
-
|
|
70
|
+
# Review mode: multi-agent | unified | hybrid
|
|
71
|
+
# mode: multi-agent
|
|
20
72
|
|
|
21
|
-
#
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
73
|
+
# Unified review settings (used for unified/hybrid modes)
|
|
74
|
+
# unified:
|
|
75
|
+
# model: ${config.defaultModel}
|
|
76
|
+
# severityThreshold: HIGH
|
|
25
77
|
|
|
78
|
+
# Review agents
|
|
79
|
+
agents:
|
|
80
|
+
`;
|
|
81
|
+
// Add agents with optional model overrides
|
|
82
|
+
for (const agent of config.agents) {
|
|
83
|
+
const agentModel = config.agentModels[agent];
|
|
84
|
+
if (agentModel && agentModel !== config.defaultModel) {
|
|
85
|
+
yaml += ` - name: ${agent}
|
|
86
|
+
model: ${agentModel}
|
|
87
|
+
`;
|
|
88
|
+
}
|
|
89
|
+
else {
|
|
90
|
+
yaml += ` - ${agent}
|
|
91
|
+
`;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
yaml += `
|
|
26
95
|
# Files to ignore during review
|
|
27
96
|
ignorePatterns:
|
|
28
97
|
- "*.test.ts"
|
|
@@ -33,134 +102,282 @@ review:
|
|
|
33
102
|
- "package-lock.json"
|
|
34
103
|
- "yarn.lock"
|
|
35
104
|
- "pnpm-lock.yaml"
|
|
36
|
-
|
|
37
|
-
output:
|
|
38
|
-
format: terminal
|
|
39
|
-
verbosity: normal
|
|
40
105
|
`;
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
- npm install -g @diff-review-system/drs
|
|
57
|
-
- drs review-mr --mr $CI_MERGE_REQUEST_IID --project $CI_PROJECT_ID --post-comments
|
|
58
|
-
variables:
|
|
59
|
-
OPENCODE_SERVER: "http://opencode.internal:3000"
|
|
60
|
-
GITLAB_TOKEN: $CI_JOB_TOKEN
|
|
61
|
-
allow_failure: true
|
|
106
|
+
return yaml;
|
|
107
|
+
}
|
|
108
|
+
const DEFAULT_GLOBAL_CONTEXT = `# Project Context
|
|
109
|
+
|
|
110
|
+
## Architecture
|
|
111
|
+
<!-- Describe your system architecture -->
|
|
112
|
+
|
|
113
|
+
## Technology Stack
|
|
114
|
+
<!-- List your main technologies, frameworks, and tools -->
|
|
115
|
+
|
|
116
|
+
## Trust Boundaries
|
|
117
|
+
<!-- Explain what inputs are trusted vs untrusted -->
|
|
118
|
+
|
|
119
|
+
## Review Guidelines
|
|
120
|
+
<!-- Any project-specific guidelines for reviewers -->
|
|
62
121
|
`;
|
|
63
|
-
const
|
|
122
|
+
const AGENT_CONTEXT_TEMPLATE = `# {AGENT} Agent Context
|
|
64
123
|
|
|
65
|
-
|
|
66
|
-
OPENCODE_SERVER=http://localhost:3000
|
|
124
|
+
## Project-Specific Rules
|
|
67
125
|
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
GITLAB_TOKEN=your-gitlab-token-here
|
|
126
|
+
### What NOT to Flag
|
|
127
|
+
<!-- List patterns that are valid for your project -->
|
|
71
128
|
|
|
72
|
-
|
|
73
|
-
|
|
129
|
+
### What TO Flag
|
|
130
|
+
<!-- List concerns specific to your project -->
|
|
131
|
+
|
|
132
|
+
## Severity Calibration
|
|
133
|
+
- **CRITICAL**: Actively exploitable issues with high impact
|
|
134
|
+
- **HIGH**: Real issues requiring immediate attention
|
|
135
|
+
- **MEDIUM**: Potential edge cases or hardening opportunities
|
|
136
|
+
- **LOW**: Best practice improvements
|
|
74
137
|
`;
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
export async function initProject(projectPath) {
|
|
79
|
-
console.log(chalk.bold.cyan('\n🚀 Initializing DRS Configuration\n'));
|
|
80
|
-
// Create .drs directory
|
|
81
|
-
const drsDir = join(projectPath, '.drs');
|
|
82
|
-
if (!existsSync(drsDir)) {
|
|
83
|
-
mkdirSync(drsDir, { recursive: true });
|
|
84
|
-
console.log(chalk.green('✓'), 'Created', chalk.cyan('.drs/'), 'directory');
|
|
85
|
-
}
|
|
86
|
-
else {
|
|
87
|
-
console.log(chalk.yellow('⚠'), chalk.cyan('.drs/'), 'directory already exists');
|
|
88
|
-
}
|
|
89
|
-
// Create .drs/agents directory
|
|
90
|
-
const agentsDir = join(drsDir, 'agents');
|
|
91
|
-
if (!existsSync(agentsDir)) {
|
|
92
|
-
mkdirSync(agentsDir, { recursive: true });
|
|
93
|
-
console.log(chalk.green('✓'), 'Created', chalk.cyan('.drs/agents/'), 'directory');
|
|
94
|
-
}
|
|
95
|
-
// Create drs.config.yaml
|
|
96
|
-
const configPath = join(drsDir, 'drs.config.yaml');
|
|
97
|
-
if (!existsSync(configPath)) {
|
|
98
|
-
writeFileSync(configPath, DEFAULT_DRS_CONFIG, 'utf-8');
|
|
99
|
-
console.log(chalk.green('✓'), 'Created', chalk.cyan('.drs/drs.config.yaml'));
|
|
100
|
-
}
|
|
101
|
-
else {
|
|
102
|
-
console.log(chalk.yellow('⚠'), chalk.cyan('.drs/drs.config.yaml'), 'already exists');
|
|
103
|
-
}
|
|
104
|
-
// Create examples directory
|
|
105
|
-
const examplesDir = join(drsDir, 'examples');
|
|
106
|
-
if (!existsSync(examplesDir)) {
|
|
107
|
-
mkdirSync(examplesDir, { recursive: true });
|
|
108
|
-
// Write example GitLab CI config
|
|
109
|
-
writeFileSync(join(examplesDir, 'gitlab-ci.example.yml'), EXAMPLE_GITLAB_CI, 'utf-8');
|
|
110
|
-
// Write example .env file
|
|
111
|
-
writeFileSync(join(examplesDir, '.env.example'), EXAMPLE_ENV, 'utf-8');
|
|
112
|
-
console.log(chalk.green('✓'), 'Created example configurations in', chalk.cyan('.drs/examples/'));
|
|
113
|
-
}
|
|
114
|
-
// Create custom agents info
|
|
115
|
-
const customAgentReadme = `# Custom Review Agents
|
|
138
|
+
const AGENTS_README = `# DRS Agent Customization
|
|
139
|
+
|
|
140
|
+
DRS supports three levels of agent customization:
|
|
116
141
|
|
|
117
|
-
|
|
142
|
+
## 1. Global Context (.drs/context.md)
|
|
118
143
|
|
|
119
|
-
|
|
144
|
+
Project-wide context applied to ALL agents. Use this for:
|
|
145
|
+
- Architecture overview
|
|
146
|
+
- Technology stack
|
|
147
|
+
- Trust boundaries
|
|
148
|
+
- General review guidelines
|
|
120
149
|
|
|
121
|
-
|
|
150
|
+
## 2. Agent-Specific Context (.drs/agents/{name}/context.md)
|
|
122
151
|
|
|
152
|
+
**Additive** - Enhances the default agent with project-specific rules.
|
|
153
|
+
|
|
154
|
+
Example: \`.drs/agents/security/context.md\`
|
|
155
|
+
\`\`\`markdown
|
|
156
|
+
# Security Agent Context
|
|
157
|
+
|
|
158
|
+
## What NOT to Flag
|
|
159
|
+
- process.env for configuration (standard practice)
|
|
160
|
+
- Data from trusted APIs
|
|
161
|
+
|
|
162
|
+
## What TO Flag
|
|
163
|
+
- SQL injection vulnerabilities
|
|
164
|
+
- XSS in user-facing endpoints
|
|
165
|
+
\`\`\`
|
|
166
|
+
|
|
167
|
+
## 3. Full Agent Override (.drs/agents/{name}/agent.md)
|
|
168
|
+
|
|
169
|
+
**Replacement** - Completely replaces the default agent.
|
|
170
|
+
|
|
171
|
+
Example: \`.drs/agents/security/agent.md\`
|
|
123
172
|
\`\`\`markdown
|
|
124
173
|
---
|
|
125
|
-
description: Custom security reviewer
|
|
126
|
-
color: "#E53E3E"
|
|
127
|
-
model: opencode/claude-sonnet-4-5
|
|
174
|
+
description: Custom security reviewer
|
|
128
175
|
tools:
|
|
129
176
|
Read: true
|
|
130
|
-
Glob: true
|
|
131
177
|
Grep: true
|
|
132
178
|
---
|
|
133
179
|
|
|
134
|
-
You are a security expert
|
|
135
|
-
|
|
136
|
-
## Project-Specific Security Rules
|
|
180
|
+
You are a security expert specialized in [your domain].
|
|
137
181
|
|
|
138
|
-
[
|
|
182
|
+
[Complete custom instructions here]
|
|
139
183
|
\`\`\`
|
|
140
184
|
|
|
141
|
-
##
|
|
185
|
+
## Custom Agents
|
|
142
186
|
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
187
|
+
Create a new folder for custom agents:
|
|
188
|
+
\`.drs/agents/rails-reviewer/agent.md\`
|
|
189
|
+
|
|
190
|
+
Then add to \`.drs/drs.config.yaml\`:
|
|
191
|
+
\`\`\`yaml
|
|
192
|
+
review:
|
|
193
|
+
agents:
|
|
194
|
+
- security
|
|
195
|
+
- quality
|
|
196
|
+
- rails-reviewer # Your custom agent
|
|
197
|
+
\`\`\`
|
|
147
198
|
|
|
148
199
|
## Learn More
|
|
149
200
|
|
|
150
|
-
- [DRS Documentation](https://github.com/
|
|
151
|
-
- [OpenCode Agent Guide](https://opencode.ai/docs/agents)
|
|
201
|
+
- [DRS Documentation](https://github.com/manojlds/drs)
|
|
152
202
|
`;
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
203
|
+
/**
|
|
204
|
+
* Initialize DRS configuration in a project with interactive prompts
|
|
205
|
+
*/
|
|
206
|
+
export async function initProject(projectPath) {
|
|
207
|
+
console.log(chalk.bold.cyan('\n📋 DRS | Diff Review System Setup\n'));
|
|
208
|
+
const prompt = createPrompt();
|
|
209
|
+
try {
|
|
210
|
+
// Check if already initialized
|
|
211
|
+
const drsDir = join(projectPath, '.drs');
|
|
212
|
+
const configPath = join(drsDir, 'drs.config.yaml');
|
|
213
|
+
if (existsSync(configPath)) {
|
|
214
|
+
const overwrite = await prompt.confirm(chalk.yellow('⚠ .drs/drs.config.yaml already exists. Overwrite?'), false);
|
|
215
|
+
if (!overwrite) {
|
|
216
|
+
console.log(chalk.gray('\nInit cancelled. Existing config preserved.\n'));
|
|
217
|
+
prompt.close();
|
|
218
|
+
return;
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
222
|
+
// STEP 1: Custom Provider
|
|
223
|
+
// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
224
|
+
console.log(chalk.bold('\n━━━ AI Provider ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n'));
|
|
225
|
+
const initConfig = {
|
|
226
|
+
useCustomProvider: false,
|
|
227
|
+
defaultModel: '',
|
|
228
|
+
agents: [],
|
|
229
|
+
agentModels: {},
|
|
230
|
+
};
|
|
231
|
+
initConfig.useCustomProvider = await prompt.confirm('Do you need a custom OpenAI-compatible provider?', false);
|
|
232
|
+
if (initConfig.useCustomProvider) {
|
|
233
|
+
console.log(chalk.gray('\nConfiguring custom provider...\n'));
|
|
234
|
+
const providerName = await prompt.ask('Provider name', 'custom');
|
|
235
|
+
const npm = await prompt.ask('NPM package', '@ai-sdk/openai-compatible');
|
|
236
|
+
const baseURL = await prompt.ask('Base URL');
|
|
237
|
+
const apiKeyEnvVar = await prompt.ask('API key environment variable name', 'OPENAI_API_KEY');
|
|
238
|
+
const modelId = await prompt.ask('Model identifier');
|
|
239
|
+
const modelDisplayName = await prompt.ask('Model display name', modelId);
|
|
240
|
+
initConfig.provider = {
|
|
241
|
+
name: providerName,
|
|
242
|
+
npm,
|
|
243
|
+
baseURL,
|
|
244
|
+
apiKeyEnvVar,
|
|
245
|
+
modelId,
|
|
246
|
+
modelDisplayName,
|
|
247
|
+
};
|
|
248
|
+
initConfig.defaultModel = `${providerName}/${modelId}`;
|
|
249
|
+
console.log(chalk.green(`\n✓ Custom provider "${providerName}" configured`));
|
|
250
|
+
}
|
|
251
|
+
// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
252
|
+
// STEP 2: Model Configuration
|
|
253
|
+
// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
254
|
+
console.log(chalk.bold('\n━━━ Model Configuration ━━━━━━━━━━━━━━━━━━━━━━━━━━━\n'));
|
|
255
|
+
if (!initConfig.useCustomProvider) {
|
|
256
|
+
console.log(chalk.gray('Common models:'));
|
|
257
|
+
console.log(chalk.gray(' • anthropic/claude-sonnet-4-5-20250929 (balanced)'));
|
|
258
|
+
console.log(chalk.gray(' • anthropic/claude-opus-4-5-20251101 (premium)'));
|
|
259
|
+
console.log(chalk.gray(' • openai/gpt-4o (OpenAI)'));
|
|
260
|
+
console.log(chalk.gray(' • zhipuai/glm-4.7 (budget)\n'));
|
|
261
|
+
initConfig.defaultModel = await prompt.ask('Default model for all agents', 'anthropic/claude-sonnet-4-5-20250929');
|
|
262
|
+
}
|
|
263
|
+
else {
|
|
264
|
+
console.log(chalk.gray(`Using custom provider model: ${initConfig.defaultModel}\n`));
|
|
265
|
+
}
|
|
266
|
+
// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
267
|
+
// STEP 3: Agent Selection
|
|
268
|
+
// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
269
|
+
console.log(chalk.bold('\n━━━ Review Agents ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n'));
|
|
270
|
+
const availableAgents = ['security', 'quality', 'style', 'performance'];
|
|
271
|
+
console.log(chalk.gray('Available agents:'));
|
|
272
|
+
console.log(chalk.gray(' • security - Security vulnerabilities & best practices'));
|
|
273
|
+
console.log(chalk.gray(' • quality - Code quality & maintainability'));
|
|
274
|
+
console.log(chalk.gray(' • style - Code style & consistency'));
|
|
275
|
+
console.log(chalk.gray(' • performance - Performance issues & optimizations\n'));
|
|
276
|
+
const agentsInput = await prompt.ask('Agents to enable (comma-separated)', 'security,quality,style,performance');
|
|
277
|
+
initConfig.agents = agentsInput
|
|
278
|
+
.split(',')
|
|
279
|
+
.map((a) => a.trim().toLowerCase())
|
|
280
|
+
.filter((a) => a.length > 0);
|
|
281
|
+
// Validate agents
|
|
282
|
+
const invalidAgents = initConfig.agents.filter((a) => !availableAgents.includes(a));
|
|
283
|
+
if (invalidAgents.length > 0) {
|
|
284
|
+
console.log(chalk.yellow(`\n⚠ Custom agents detected: ${invalidAgents.join(', ')}`));
|
|
285
|
+
console.log(chalk.gray(" You'll need to create agent definitions in .drs/agents/{name}/agent.md"));
|
|
286
|
+
}
|
|
287
|
+
// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
288
|
+
// STEP 4: Per-Agent Model Overrides
|
|
289
|
+
// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
290
|
+
console.log(chalk.bold('\n━━━ Per-Agent Model Overrides ━━━━━━━━━━━━━━━━━━━━━\n'));
|
|
291
|
+
const configureOverrides = await prompt.confirm('Configure different models for specific agents?', false);
|
|
292
|
+
if (configureOverrides) {
|
|
293
|
+
console.log(chalk.gray(`\nPress Enter to use default (${initConfig.defaultModel})\n`));
|
|
294
|
+
for (const agent of initConfig.agents) {
|
|
295
|
+
const model = await prompt.ask(`Model for ${agent}`);
|
|
296
|
+
if (model && model !== initConfig.defaultModel) {
|
|
297
|
+
initConfig.agentModels[agent] = model;
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
302
|
+
// Create files
|
|
303
|
+
// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
304
|
+
console.log(chalk.bold('\n━━━ Creating Files ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n'));
|
|
305
|
+
// Create .drs directory
|
|
306
|
+
if (!existsSync(drsDir)) {
|
|
307
|
+
mkdirSync(drsDir, { recursive: true });
|
|
308
|
+
}
|
|
309
|
+
// Create drs.config.yaml
|
|
310
|
+
writeFileSync(configPath, generateConfigYaml(initConfig), 'utf-8');
|
|
311
|
+
console.log(chalk.green('✓'), 'Created', chalk.cyan('.drs/drs.config.yaml'));
|
|
312
|
+
// Create global context file
|
|
313
|
+
const contextPath = join(drsDir, 'context.md');
|
|
314
|
+
if (!existsSync(contextPath)) {
|
|
315
|
+
writeFileSync(contextPath, DEFAULT_GLOBAL_CONTEXT, 'utf-8');
|
|
316
|
+
console.log(chalk.green('✓'), 'Created', chalk.cyan('.drs/context.md'));
|
|
317
|
+
}
|
|
318
|
+
else {
|
|
319
|
+
console.log(chalk.yellow('⚠'), chalk.cyan('.drs/context.md'), 'already exists');
|
|
320
|
+
}
|
|
321
|
+
// Create agents directory
|
|
322
|
+
const agentsDir = join(drsDir, 'agents');
|
|
323
|
+
if (!existsSync(agentsDir)) {
|
|
324
|
+
mkdirSync(agentsDir, { recursive: true });
|
|
325
|
+
}
|
|
326
|
+
// Create agent context templates for selected agents
|
|
327
|
+
for (const agentName of initConfig.agents) {
|
|
328
|
+
const agentDir = join(agentsDir, agentName);
|
|
329
|
+
if (!existsSync(agentDir)) {
|
|
330
|
+
mkdirSync(agentDir, { recursive: true });
|
|
331
|
+
const agentContextPath = join(agentDir, 'context.md');
|
|
332
|
+
const contextContent = AGENT_CONTEXT_TEMPLATE.replace('{AGENT}', agentName.charAt(0).toUpperCase() + agentName.slice(1));
|
|
333
|
+
writeFileSync(agentContextPath, contextContent, 'utf-8');
|
|
334
|
+
}
|
|
335
|
+
}
|
|
336
|
+
console.log(chalk.green('✓'), 'Created agent context templates in', chalk.cyan('.drs/agents/'));
|
|
337
|
+
// Create agents README
|
|
338
|
+
const agentsReadmePath = join(agentsDir, 'README.md');
|
|
339
|
+
if (!existsSync(agentsReadmePath)) {
|
|
340
|
+
writeFileSync(agentsReadmePath, AGENTS_README, 'utf-8');
|
|
341
|
+
console.log(chalk.green('✓'), 'Created', chalk.cyan('.drs/agents/README.md'));
|
|
342
|
+
}
|
|
343
|
+
// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
344
|
+
// Summary
|
|
345
|
+
// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
346
|
+
console.log(chalk.bold.green('\n✓ DRS initialization complete!\n'));
|
|
347
|
+
console.log(chalk.bold('Configuration Summary:'));
|
|
348
|
+
console.log(` Provider: ${initConfig.useCustomProvider ? initConfig.provider?.name : 'Built-in (Anthropic/OpenAI/etc)'}`);
|
|
349
|
+
console.log(` Default Model: ${initConfig.defaultModel}`);
|
|
350
|
+
console.log(` Agents: ${initConfig.agents.join(', ')}`);
|
|
351
|
+
if (Object.keys(initConfig.agentModels).length > 0) {
|
|
352
|
+
console.log(' Model Overrides:');
|
|
353
|
+
for (const [agent, model] of Object.entries(initConfig.agentModels)) {
|
|
354
|
+
console.log(` • ${agent}: ${model}`);
|
|
355
|
+
}
|
|
356
|
+
}
|
|
357
|
+
console.log(chalk.bold('\nNext steps:\n'));
|
|
358
|
+
// Determine which API key is needed
|
|
359
|
+
let apiKeyHint;
|
|
360
|
+
if (initConfig.useCustomProvider && initConfig.provider) {
|
|
361
|
+
apiKeyHint = `export ${initConfig.provider.apiKeyEnvVar}=your-key`;
|
|
362
|
+
}
|
|
363
|
+
else if (initConfig.defaultModel.startsWith('anthropic/')) {
|
|
364
|
+
apiKeyHint = 'export ANTHROPIC_API_KEY=your-key';
|
|
365
|
+
}
|
|
366
|
+
else if (initConfig.defaultModel.startsWith('openai/')) {
|
|
367
|
+
apiKeyHint = 'export OPENAI_API_KEY=your-key';
|
|
368
|
+
}
|
|
369
|
+
else {
|
|
370
|
+
apiKeyHint = 'export <PROVIDER>_API_KEY=your-key';
|
|
371
|
+
}
|
|
372
|
+
console.log(` 1. Set API key: ${chalk.cyan(apiKeyHint)}`);
|
|
373
|
+
console.log(` 2. Edit project context: ${chalk.cyan('.drs/context.md')}`);
|
|
374
|
+
console.log(` 3. Run a review: ${chalk.cyan('drs review-pr --pr <number> --owner <owner> --repo <repo>')}`);
|
|
375
|
+
console.log('');
|
|
376
|
+
prompt.close();
|
|
377
|
+
}
|
|
378
|
+
catch (error) {
|
|
379
|
+
prompt.close();
|
|
380
|
+
throw error;
|
|
157
381
|
}
|
|
158
|
-
// Summary
|
|
159
|
-
console.log(chalk.bold.green('\n✓ DRS initialization complete!\n'));
|
|
160
|
-
console.log(chalk.bold('Next steps:\n'));
|
|
161
|
-
console.log(' 1. Edit', chalk.cyan('.drs/drs.config.yaml'), 'to customize review behavior');
|
|
162
|
-
console.log(' 2. Set environment variables (see', chalk.cyan('.drs/examples/.env.example') + ')');
|
|
163
|
-
console.log(' 3. Run', chalk.cyan('drs review-local'), 'to review local changes');
|
|
164
|
-
console.log(' 4. See', chalk.cyan('.drs/examples/gitlab-ci.example.yml'), 'for CI/CD setup\n');
|
|
165
382
|
}
|
|
166
383
|
//# sourceMappingURL=init.js.map
|
package/dist/cli/init.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/cli/init.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/cli/init.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export interface PostCommentsOptions {
|
|
2
|
+
inputPath: string;
|
|
3
|
+
owner?: string;
|
|
4
|
+
repo?: string;
|
|
5
|
+
prNumber?: number;
|
|
6
|
+
projectId?: string;
|
|
7
|
+
mrIid?: number;
|
|
8
|
+
workingDir?: string;
|
|
9
|
+
skipRepoCheck?: boolean;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Post comments from a saved review JSON to GitHub or GitLab.
|
|
13
|
+
*/
|
|
14
|
+
export declare function postCommentsFromJson(options: PostCommentsOptions): Promise<void>;
|
|
15
|
+
//# sourceMappingURL=post-comments.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"post-comments.d.ts","sourceRoot":"","sources":["../../src/cli/post-comments.ts"],"names":[],"mappings":"AAYA,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AA0FD;;GAEG;AACH,wBAAsB,oBAAoB,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAkItF"}
|