@diff-review-system/drs 1.1.2 → 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 -139
- package/.opencode/agent/review/quality.md +36 -113
- package/.opencode/agent/review/security.md +32 -97
- package/.opencode/agent/review/style.md +4 -0
- package/.opencode/agent/review/unified-reviewer.md +74 -0
- package/.opencode/opencode.jsonc +4 -29
- package/.opencode/tool/write_json_output.ts +24 -0
- package/README.md +48 -21
- package/dist/ci/runner.d.ts.map +1 -1
- package/dist/ci/runner.js +2 -0
- 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 +220 -16
- 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 +273 -145
- 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 +44 -18
- package/dist/cli/review-local.js.map +1 -1
- package/dist/cli/review-mr.d.ts +6 -0
- package/dist/cli/review-mr.d.ts.map +1 -1
- package/dist/cli/review-mr.js +63 -7
- 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 +8 -1
- 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/platform-adapter.d.ts.map +1 -1
- package/dist/github/platform-adapter.js +4 -2
- package/dist/github/platform-adapter.js.map +1 -1
- package/dist/gitlab/client.d.ts.map +1 -1
- package/dist/gitlab/client.js +1 -1
- package/dist/gitlab/client.js.map +1 -1
- package/dist/gitlab/platform-adapter.d.ts.map +1 -1
- package/dist/gitlab/platform-adapter.js +6 -5
- package/dist/gitlab/platform-adapter.js.map +1 -1
- 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/comment-formatter.d.ts +3 -2
- package/dist/lib/comment-formatter.d.ts.map +1 -1
- package/dist/lib/comment-formatter.js +16 -2
- package/dist/lib/comment-formatter.js.map +1 -1
- 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.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.js +71 -41
- package/dist/lib/config-model-overrides.test.js.map +1 -1
- package/dist/lib/config.d.ts +63 -7
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +116 -22
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/config.test.js +10 -2
- package/dist/lib/config.test.js.map +1 -1
- 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.map +1 -1
- package/dist/lib/context-loader.js +8 -1
- package/dist/lib/context-loader.js.map +1 -1
- 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/lib/diff-parser.d.ts +11 -0
- package/dist/lib/diff-parser.d.ts.map +1 -1
- package/dist/lib/diff-parser.js +37 -0
- package/dist/lib/diff-parser.js.map +1 -1
- package/dist/lib/issue-parser.d.ts +1 -1
- package/dist/lib/issue-parser.d.ts.map +1 -1
- package/dist/lib/issue-parser.js +16 -14
- package/dist/lib/issue-parser.js.map +1 -1
- 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 +1 -1
- package/dist/lib/platform-client.d.ts.map +1 -1
- 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 +27 -10
- package/dist/lib/review-orchestrator.d.ts.map +1 -1
- package/dist/lib/review-orchestrator.js +51 -110
- package/dist/lib/review-orchestrator.js.map +1 -1
- 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 +21 -4
- package/dist/lib/unified-review-executor.d.ts.map +1 -1
- package/dist/lib/unified-review-executor.js +81 -151
- package/dist/lib/unified-review-executor.js.map +1 -1
- 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 +48 -34
- 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 +11 -3
- package/dist/opencode/client.d.ts.map +1 -1
- package/dist/opencode/client.js +237 -71
- 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 +7 -7
- package/.opencode/agent/github-reviewer.md +0 -77
- package/.opencode/agent/gitlab-reviewer.md +0 -77
- package/.opencode/agent/local-reviewer.md +0 -63
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,11 +102,9 @@ 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
|
`;
|
|
106
|
+
return yaml;
|
|
107
|
+
}
|
|
41
108
|
const DEFAULT_GLOBAL_CONTEXT = `# Project Context
|
|
42
109
|
|
|
43
110
|
## Architecture
|
|
@@ -52,118 +119,23 @@ const DEFAULT_GLOBAL_CONTEXT = `# Project Context
|
|
|
52
119
|
## Review Guidelines
|
|
53
120
|
<!-- Any project-specific guidelines for reviewers -->
|
|
54
121
|
`;
|
|
55
|
-
const
|
|
122
|
+
const AGENT_CONTEXT_TEMPLATE = `# {AGENT} Agent Context
|
|
56
123
|
|
|
57
|
-
## Project-Specific
|
|
124
|
+
## Project-Specific Rules
|
|
58
125
|
|
|
59
126
|
### What NOT to Flag
|
|
60
127
|
<!-- List patterns that are valid for your project -->
|
|
61
128
|
|
|
62
129
|
### What TO Flag
|
|
63
|
-
<!-- List
|
|
130
|
+
<!-- List concerns specific to your project -->
|
|
64
131
|
|
|
65
132
|
## Severity Calibration
|
|
66
|
-
- **CRITICAL**: Actively exploitable
|
|
67
|
-
- **HIGH**: Real
|
|
133
|
+
- **CRITICAL**: Actively exploitable issues with high impact
|
|
134
|
+
- **HIGH**: Real issues requiring immediate attention
|
|
68
135
|
- **MEDIUM**: Potential edge cases or hardening opportunities
|
|
69
136
|
- **LOW**: Best practice improvements
|
|
70
137
|
`;
|
|
71
|
-
const
|
|
72
|
-
# Add this to your .gitlab-ci.yml file
|
|
73
|
-
|
|
74
|
-
stages:
|
|
75
|
-
- review
|
|
76
|
-
- test
|
|
77
|
-
- deploy
|
|
78
|
-
|
|
79
|
-
# AI Code Review
|
|
80
|
-
ai_review:
|
|
81
|
-
stage: review
|
|
82
|
-
image: node:20
|
|
83
|
-
only:
|
|
84
|
-
- merge_requests
|
|
85
|
-
script:
|
|
86
|
-
- npm install -g @diff-review-system/drs
|
|
87
|
-
- drs review-mr --mr $CI_MERGE_REQUEST_IID --project $CI_PROJECT_ID --post-comments
|
|
88
|
-
variables:
|
|
89
|
-
OPENCODE_SERVER: "http://opencode.internal:3000"
|
|
90
|
-
GITLAB_TOKEN: $CI_JOB_TOKEN
|
|
91
|
-
allow_failure: true
|
|
92
|
-
`;
|
|
93
|
-
const EXAMPLE_ENV = `# DRS Environment Variables
|
|
94
|
-
|
|
95
|
-
# OpenCode Server URL
|
|
96
|
-
OPENCODE_SERVER=http://localhost:3000
|
|
97
|
-
|
|
98
|
-
# GitLab Configuration
|
|
99
|
-
GITLAB_URL=https://gitlab.com
|
|
100
|
-
GITLAB_TOKEN=your-gitlab-token-here
|
|
101
|
-
|
|
102
|
-
# Review Configuration (optional, overrides .drs/drs.config.yaml)
|
|
103
|
-
REVIEW_AGENTS=security,quality,style,performance
|
|
104
|
-
`;
|
|
105
|
-
/**
|
|
106
|
-
* Initialize DRS configuration in a project
|
|
107
|
-
*/
|
|
108
|
-
export async function initProject(projectPath) {
|
|
109
|
-
console.log(chalk.bold.cyan('\n📋 DRS | Configuration Setup\n'));
|
|
110
|
-
// Create .drs directory
|
|
111
|
-
const drsDir = join(projectPath, '.drs');
|
|
112
|
-
if (!existsSync(drsDir)) {
|
|
113
|
-
mkdirSync(drsDir, { recursive: true });
|
|
114
|
-
console.log(chalk.green('✓'), 'Created', chalk.cyan('.drs/'), 'directory');
|
|
115
|
-
}
|
|
116
|
-
else {
|
|
117
|
-
console.log(chalk.yellow('⚠'), chalk.cyan('.drs/'), 'directory already exists');
|
|
118
|
-
}
|
|
119
|
-
// Create global context file
|
|
120
|
-
const contextPath = join(drsDir, 'context.md');
|
|
121
|
-
if (!existsSync(contextPath)) {
|
|
122
|
-
writeFileSync(contextPath, DEFAULT_GLOBAL_CONTEXT, 'utf-8');
|
|
123
|
-
console.log(chalk.green('✓'), 'Created', chalk.cyan('.drs/context.md'));
|
|
124
|
-
}
|
|
125
|
-
else {
|
|
126
|
-
console.log(chalk.yellow('⚠'), chalk.cyan('.drs/context.md'), 'already exists');
|
|
127
|
-
}
|
|
128
|
-
// Create .drs/agents directory
|
|
129
|
-
const agentsDir = join(drsDir, 'agents');
|
|
130
|
-
if (!existsSync(agentsDir)) {
|
|
131
|
-
mkdirSync(agentsDir, { recursive: true });
|
|
132
|
-
console.log(chalk.green('✓'), 'Created', chalk.cyan('.drs/agents/'), 'directory');
|
|
133
|
-
}
|
|
134
|
-
// Create example agent folders
|
|
135
|
-
const exampleAgents = ['security', 'quality', 'style', 'performance'];
|
|
136
|
-
for (const agentName of exampleAgents) {
|
|
137
|
-
const agentDir = join(agentsDir, agentName);
|
|
138
|
-
if (!existsSync(agentDir)) {
|
|
139
|
-
mkdirSync(agentDir, { recursive: true });
|
|
140
|
-
// Create context.md template
|
|
141
|
-
const agentContextPath = join(agentDir, 'context.md');
|
|
142
|
-
writeFileSync(agentContextPath, EXAMPLE_AGENT_CONTEXT.replace('Security', agentName.charAt(0).toUpperCase() + agentName.slice(1)), 'utf-8');
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
console.log(chalk.green('✓'), 'Created agent context templates in', chalk.cyan('.drs/agents/'));
|
|
146
|
-
// Create drs.config.yaml
|
|
147
|
-
const configPath = join(drsDir, 'drs.config.yaml');
|
|
148
|
-
if (!existsSync(configPath)) {
|
|
149
|
-
writeFileSync(configPath, DEFAULT_DRS_CONFIG, 'utf-8');
|
|
150
|
-
console.log(chalk.green('✓'), 'Created', chalk.cyan('.drs/drs.config.yaml'));
|
|
151
|
-
}
|
|
152
|
-
else {
|
|
153
|
-
console.log(chalk.yellow('⚠'), chalk.cyan('.drs/drs.config.yaml'), 'already exists');
|
|
154
|
-
}
|
|
155
|
-
// Create examples directory
|
|
156
|
-
const examplesDir = join(drsDir, 'examples');
|
|
157
|
-
if (!existsSync(examplesDir)) {
|
|
158
|
-
mkdirSync(examplesDir, { recursive: true });
|
|
159
|
-
// Write example GitLab CI config
|
|
160
|
-
writeFileSync(join(examplesDir, 'gitlab-ci.example.yml'), EXAMPLE_GITLAB_CI, 'utf-8');
|
|
161
|
-
// Write example .env file
|
|
162
|
-
writeFileSync(join(examplesDir, '.env.example'), EXAMPLE_ENV, 'utf-8');
|
|
163
|
-
console.log(chalk.green('✓'), 'Created example configurations in', chalk.cyan('.drs/examples/'));
|
|
164
|
-
}
|
|
165
|
-
// Create custom agents info
|
|
166
|
-
const customAgentReadme = `# DRS Agent Customization
|
|
138
|
+
const AGENTS_README = `# DRS Agent Customization
|
|
167
139
|
|
|
168
140
|
DRS supports three levels of agent customization:
|
|
169
141
|
|
|
@@ -200,7 +172,6 @@ Example: \`.drs/agents/security/agent.md\`
|
|
|
200
172
|
\`\`\`markdown
|
|
201
173
|
---
|
|
202
174
|
description: Custom security reviewer
|
|
203
|
-
model: claude-sonnet-4-5
|
|
204
175
|
tools:
|
|
205
176
|
Read: true
|
|
206
177
|
Grep: true
|
|
@@ -225,31 +196,188 @@ review:
|
|
|
225
196
|
- rails-reviewer # Your custom agent
|
|
226
197
|
\`\`\`
|
|
227
198
|
|
|
228
|
-
## Future: Skills (Coming Soon)
|
|
229
|
-
|
|
230
|
-
\`.drs/agents/security/skills/python.md\`
|
|
231
|
-
\`.drs/agents/security/skills/nodejs.md\`
|
|
232
|
-
|
|
233
|
-
Skills will be auto-loaded based on detected languages.
|
|
234
|
-
|
|
235
199
|
## Learn More
|
|
236
200
|
|
|
237
|
-
- [DRS Documentation](https://github.com/
|
|
238
|
-
- [OpenCode Agent Guide](https://opencode.ai/docs/agents)
|
|
201
|
+
- [DRS Documentation](https://github.com/manojlds/drs)
|
|
239
202
|
`;
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
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;
|
|
244
381
|
}
|
|
245
|
-
// Summary
|
|
246
|
-
console.log(chalk.bold.green('\n✓ DRS initialization complete!\n'));
|
|
247
|
-
console.log(chalk.bold('Next steps:\n'));
|
|
248
|
-
console.log(' 1. Edit', chalk.cyan('.drs/context.md'), 'with your project context');
|
|
249
|
-
console.log(' 2. Customize agent behavior in', chalk.cyan('.drs/agents/{name}/context.md'));
|
|
250
|
-
console.log(' 3. Configure review settings in', chalk.cyan('.drs/drs.config.yaml'));
|
|
251
|
-
console.log(' 4. Set environment variables (see', chalk.cyan('.drs/examples/.env.example') + ')');
|
|
252
|
-
console.log(' 5. Run', chalk.cyan('drs review-pr'), 'to test on a PR\n');
|
|
253
|
-
console.log(chalk.gray('See', chalk.cyan('.drs/agents/README.md'), 'for customization guide\n'));
|
|
254
382
|
}
|
|
255
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"}
|