@kosuke-ai/cli 0.0.10 ā 0.0.11
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/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +51 -0
- package/dist/index.js.map +1 -1
- package/dist/kosuke/commands/analyse.d.ts.map +1 -1
- package/dist/kosuke/commands/analyse.js +15 -85
- package/dist/kosuke/commands/analyse.js.map +1 -1
- package/dist/kosuke/commands/getcode.d.ts +29 -0
- package/dist/kosuke/commands/getcode.d.ts.map +1 -0
- package/dist/kosuke/commands/getcode.js +204 -0
- package/dist/kosuke/commands/getcode.js.map +1 -0
- package/dist/kosuke/commands/lint.d.ts.map +1 -1
- package/dist/kosuke/commands/lint.js +9 -36
- package/dist/kosuke/commands/lint.js.map +1 -1
- package/dist/kosuke/commands/requirements.d.ts.map +1 -1
- package/dist/kosuke/commands/requirements.js +1 -18
- package/dist/kosuke/commands/requirements.js.map +1 -1
- package/dist/kosuke/commands/sync-rules.d.ts.map +1 -1
- package/dist/kosuke/commands/sync-rules.js +30 -48
- package/dist/kosuke/commands/sync-rules.js.map +1 -1
- package/dist/kosuke/commands/tickets.d.ts +24 -0
- package/dist/kosuke/commands/tickets.d.ts.map +1 -0
- package/dist/kosuke/commands/tickets.js +298 -0
- package/dist/kosuke/commands/tickets.js.map +1 -0
- package/dist/kosuke/types.d.ts +50 -0
- package/dist/kosuke/types.d.ts.map +1 -1
- package/dist/kosuke/utils/claude-agent.d.ts +57 -0
- package/dist/kosuke/utils/claude-agent.d.ts.map +1 -0
- package/dist/kosuke/utils/claude-agent.js +177 -0
- package/dist/kosuke/utils/claude-agent.js.map +1 -0
- package/dist/kosuke/utils/repository-manager.d.ts +13 -0
- package/dist/kosuke/utils/repository-manager.d.ts.map +1 -0
- package/dist/kosuke/utils/repository-manager.js +94 -0
- package/dist/kosuke/utils/repository-manager.js.map +1 -0
- package/dist/kosuke/utils/repository-resolver.d.ts +12 -0
- package/dist/kosuke/utils/repository-resolver.d.ts.map +1 -0
- package/dist/kosuke/utils/repository-resolver.js +186 -0
- package/dist/kosuke/utils/repository-resolver.js.map +1 -0
- package/dist/kosuke/utils/validator.d.ts +19 -7
- package/dist/kosuke/utils/validator.d.ts.map +1 -1
- package/dist/kosuke/utils/validator.js +102 -24
- package/dist/kosuke/utils/validator.js.map +1 -1
- package/dist/lib.d.ts +25 -4
- package/dist/lib.d.ts.map +1 -1
- package/dist/lib.js +22 -3
- package/dist/lib.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -7,12 +7,16 @@
|
|
|
7
7
|
* analyse Analyze and fix code quality issues
|
|
8
8
|
* lint Fix linting errors with Claude AI
|
|
9
9
|
* requirements Interactive requirements gathering
|
|
10
|
+
* getcode Explore GitHub repositories and fetch code
|
|
11
|
+
* tickets Generate implementation tickets from requirements
|
|
10
12
|
*
|
|
11
13
|
* Usage:
|
|
12
14
|
* bun run kosuke sync-rules
|
|
13
15
|
* bun run kosuke analyse
|
|
14
16
|
* bun run kosuke lint
|
|
15
17
|
* bun run kosuke requirements
|
|
18
|
+
* bun run kosuke getcode "query"
|
|
19
|
+
* bun run kosuke tickets
|
|
16
20
|
*
|
|
17
21
|
* Environment Variables:
|
|
18
22
|
* ANTHROPIC_API_KEY - Required for Claude API
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";AAEA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,eAAe,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -7,12 +7,16 @@
|
|
|
7
7
|
* analyse Analyze and fix code quality issues
|
|
8
8
|
* lint Fix linting errors with Claude AI
|
|
9
9
|
* requirements Interactive requirements gathering
|
|
10
|
+
* getcode Explore GitHub repositories and fetch code
|
|
11
|
+
* tickets Generate implementation tickets from requirements
|
|
10
12
|
*
|
|
11
13
|
* Usage:
|
|
12
14
|
* bun run kosuke sync-rules
|
|
13
15
|
* bun run kosuke analyse
|
|
14
16
|
* bun run kosuke lint
|
|
15
17
|
* bun run kosuke requirements
|
|
18
|
+
* bun run kosuke getcode "query"
|
|
19
|
+
* bun run kosuke tickets
|
|
16
20
|
*
|
|
17
21
|
* Environment Variables:
|
|
18
22
|
* ANTHROPIC_API_KEY - Required for Claude API
|
|
@@ -23,6 +27,8 @@ import { syncRulesCommand } from './kosuke/commands/sync-rules.js';
|
|
|
23
27
|
import { analyseCommand } from './kosuke/commands/analyse.js';
|
|
24
28
|
import { lintCommand } from './kosuke/commands/lint.js';
|
|
25
29
|
import { requirementsCommand } from './kosuke/commands/requirements.js';
|
|
30
|
+
import { getCodeCommand, parseGetCodeArgs } from './kosuke/commands/getcode.js';
|
|
31
|
+
import { ticketsCommand } from './kosuke/commands/tickets.js';
|
|
26
32
|
async function main() {
|
|
27
33
|
const args = process.argv.slice(2);
|
|
28
34
|
const command = args[0];
|
|
@@ -66,6 +72,20 @@ async function main() {
|
|
|
66
72
|
await requirementsCommand();
|
|
67
73
|
break;
|
|
68
74
|
}
|
|
75
|
+
case 'getcode': {
|
|
76
|
+
const options = parseGetCodeArgs(args);
|
|
77
|
+
await getCodeCommand(options);
|
|
78
|
+
break;
|
|
79
|
+
}
|
|
80
|
+
case 'tickets': {
|
|
81
|
+
const options = {
|
|
82
|
+
path: args.find((arg) => arg.startsWith('--path='))?.split('=')[1],
|
|
83
|
+
output: args.find((arg) => arg.startsWith('--output='))?.split('=')[1],
|
|
84
|
+
template: args.find((arg) => arg.startsWith('--template='))?.split('=')[1],
|
|
85
|
+
};
|
|
86
|
+
await ticketsCommand(options);
|
|
87
|
+
break;
|
|
88
|
+
}
|
|
69
89
|
default:
|
|
70
90
|
console.error(`ā Unknown command: ${command}\n`);
|
|
71
91
|
showHelp();
|
|
@@ -136,6 +156,37 @@ COMMANDS:
|
|
|
136
156
|
Examples:
|
|
137
157
|
kosuke requirements
|
|
138
158
|
|
|
159
|
+
getcode [repo] "<query>" [options]
|
|
160
|
+
Explore GitHub repositories and fetch code implementations
|
|
161
|
+
Uses Claude Code Agent to find and explain code
|
|
162
|
+
|
|
163
|
+
Options:
|
|
164
|
+
--template, -t Use kosuke-template repository
|
|
165
|
+
--output=<file> Save output to file
|
|
166
|
+
|
|
167
|
+
Examples:
|
|
168
|
+
kosuke getcode "facebook/react" "How does reconciliation work?"
|
|
169
|
+
kosuke getcode "How is routing implemented in Next.js?"
|
|
170
|
+
kosuke getcode --template "What authentication system is used?"
|
|
171
|
+
kosuke getcode -t "Show me pagination examples"
|
|
172
|
+
|
|
173
|
+
tickets [options]
|
|
174
|
+
Generate implementation tickets from requirements document
|
|
175
|
+
Analyzes requirements and creates structured tickets in three phases:
|
|
176
|
+
1. Schema tickets (database design)
|
|
177
|
+
2. Backend tickets (API, services, business logic)
|
|
178
|
+
3. Frontend tickets (pages, components, UI)
|
|
179
|
+
|
|
180
|
+
Options:
|
|
181
|
+
--path=<file> Path to requirements document (default: docs.md)
|
|
182
|
+
--output=<file> Output file for tickets (default: tickets.json)
|
|
183
|
+
--template=<repo> Custom template repository (default: kosuke-template)
|
|
184
|
+
|
|
185
|
+
Examples:
|
|
186
|
+
kosuke tickets # Use docs.md
|
|
187
|
+
kosuke tickets --path=requirements.md # Custom requirements file
|
|
188
|
+
kosuke tickets --output=my-tickets.json # Custom output file
|
|
189
|
+
|
|
139
190
|
WORKFLOW:
|
|
140
191
|
|
|
141
192
|
By default, all commands apply changes locally without git operations.
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";AAEA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyse.d.ts","sourceRoot":"","sources":["../../../kosuke/commands/analyse.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAUH,OAAO,KAAK,EAAE,cAAc,EAAc,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"analyse.d.ts","sourceRoot":"","sources":["../../../kosuke/commands/analyse.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAUH,OAAO,KAAK,EAAE,cAAc,EAAc,MAAM,aAAa,CAAC;AA0O9D;;GAEG;AACH,wBAAsB,cAAc,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAkFhF"}
|
|
@@ -7,32 +7,14 @@
|
|
|
7
7
|
* - Validate after each batch, commit locally
|
|
8
8
|
* - If --pr flag: Push all commits and create single PR
|
|
9
9
|
*/
|
|
10
|
-
import { query } from '@anthropic-ai/claude-agent-sdk';
|
|
11
10
|
import { readFileSync } from 'fs';
|
|
12
11
|
import { join } from 'path';
|
|
13
12
|
import { discoverFiles } from '../utils/file-discovery.js';
|
|
14
13
|
import { createBatches } from '../utils/batch-creator.js';
|
|
15
14
|
import { runLint, runTypecheck } from '../utils/validator.js';
|
|
16
15
|
import { runWithPRBatched } from '../utils/pr-orchestrator.js';
|
|
16
|
+
import { runAgent, formatCostBreakdown } from '../utils/claude-agent.js';
|
|
17
17
|
import { fixLintErrors } from './lint.js';
|
|
18
|
-
/**
|
|
19
|
-
* Calculate cost based on Claude Sonnet 4.5 pricing
|
|
20
|
-
* - $3 per million input tokens
|
|
21
|
-
* - $15 per million output tokens
|
|
22
|
-
* - $3.75 per million cache creation tokens (input + 25% overhead)
|
|
23
|
-
* - $0.30 per million cache read tokens (90% discount from input)
|
|
24
|
-
*/
|
|
25
|
-
function calculateCost(inputTokens, outputTokens, cacheCreationTokens = 0, cacheReadTokens = 0) {
|
|
26
|
-
const INPUT_COST_PER_MILLION = 3.0;
|
|
27
|
-
const OUTPUT_COST_PER_MILLION = 15.0;
|
|
28
|
-
const CACHE_CREATION_COST_PER_MILLION = 3.75;
|
|
29
|
-
const CACHE_READ_COST_PER_MILLION = 0.3;
|
|
30
|
-
const inputCost = (inputTokens / 1000000) * INPUT_COST_PER_MILLION;
|
|
31
|
-
const outputCost = (outputTokens / 1000000) * OUTPUT_COST_PER_MILLION;
|
|
32
|
-
const cacheCreationCost = (cacheCreationTokens / 1000000) * CACHE_CREATION_COST_PER_MILLION;
|
|
33
|
-
const cacheReadCost = (cacheReadTokens / 1000000) * CACHE_READ_COST_PER_MILLION;
|
|
34
|
-
return inputCost + outputCost + cacheCreationCost + cacheReadCost;
|
|
35
|
-
}
|
|
36
18
|
/**
|
|
37
19
|
* Run Claude analysis on a single batch
|
|
38
20
|
*/
|
|
@@ -74,55 +56,13 @@ ${batch.files.map((f) => `- ${f}`).join('\n')}
|
|
|
74
56
|
**Rules reference:** ${join(workspaceRoot, 'CLAUDE.md')}
|
|
75
57
|
|
|
76
58
|
Start by reading CLAUDE.md, then analyze and fix the batch files.`;
|
|
77
|
-
const options = {
|
|
78
|
-
model: 'claude-sonnet-4-5',
|
|
79
|
-
systemPrompt,
|
|
80
|
-
maxTurns: 15,
|
|
81
|
-
cwd: workspaceRoot,
|
|
82
|
-
permissionMode: 'bypassPermissions',
|
|
83
|
-
};
|
|
84
59
|
try {
|
|
85
|
-
const
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
// Display Claude's reasoning and actions
|
|
92
|
-
for await (const message of responseStream) {
|
|
93
|
-
if (message.type === 'assistant') {
|
|
94
|
-
const content = message.message.content;
|
|
95
|
-
for (const block of content) {
|
|
96
|
-
if (block.type === 'text' && block.text.trim()) {
|
|
97
|
-
// Only show key insights, not every detail
|
|
98
|
-
const text = block.text.trim();
|
|
99
|
-
if (text.includes('violation') ||
|
|
100
|
-
text.includes('fix') ||
|
|
101
|
-
text.includes('issue') ||
|
|
102
|
-
text.includes('ā
') ||
|
|
103
|
-
text.includes('ā')) {
|
|
104
|
-
console.log(` š ${text}`);
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
else if (block.type === 'tool_use') {
|
|
108
|
-
if (block.name === 'write' || block.name === 'search_replace') {
|
|
109
|
-
fixCount++;
|
|
110
|
-
console.log(` š§ Applying fix ${fixCount}...`);
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
// Track token usage from the response
|
|
116
|
-
if (message.type === 'result' && message.subtype === 'success') {
|
|
117
|
-
// Capture all token types including cache-related tokens
|
|
118
|
-
inputTokens += message.usage.input_tokens || 0;
|
|
119
|
-
outputTokens += message.usage.output_tokens || 0;
|
|
120
|
-
cacheCreationTokens += message.usage.cache_creation_input_tokens || 0;
|
|
121
|
-
cacheReadTokens += message.usage.cache_read_input_tokens || 0;
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
// Calculate cost for this batch
|
|
125
|
-
const cost = calculateCost(inputTokens, outputTokens, cacheCreationTokens, cacheReadTokens);
|
|
60
|
+
const result = await runAgent(promptText, {
|
|
61
|
+
systemPrompt,
|
|
62
|
+
maxTurns: 15,
|
|
63
|
+
cwd: workspaceRoot,
|
|
64
|
+
verbosity: 'normal',
|
|
65
|
+
});
|
|
126
66
|
// Return placeholder fixes (real fix tracking would require parsing Claude's edits)
|
|
127
67
|
const fixes = batch.files.map((file) => ({
|
|
128
68
|
file,
|
|
@@ -130,26 +70,16 @@ Start by reading CLAUDE.md, then analyze and fix the batch files.`;
|
|
|
130
70
|
description: 'Quality improvements',
|
|
131
71
|
linesChanged: 0,
|
|
132
72
|
}));
|
|
133
|
-
console.log(`\n ⨠Batch analysis complete (${fixCount} fixes applied)`);
|
|
134
|
-
|
|
135
|
-
const tokenBreakdown = [];
|
|
136
|
-
if (inputTokens > 0)
|
|
137
|
-
tokenBreakdown.push(`${inputTokens.toLocaleString()} input`);
|
|
138
|
-
if (outputTokens > 0)
|
|
139
|
-
tokenBreakdown.push(`${outputTokens.toLocaleString()} output`);
|
|
140
|
-
if (cacheCreationTokens > 0)
|
|
141
|
-
tokenBreakdown.push(`${cacheCreationTokens.toLocaleString()} cache write`);
|
|
142
|
-
if (cacheReadTokens > 0)
|
|
143
|
-
tokenBreakdown.push(`${cacheReadTokens.toLocaleString()} cache read`);
|
|
144
|
-
console.log(` š° Cost: $${cost.toFixed(4)} (${tokenBreakdown.join(' + ')} tokens)`);
|
|
73
|
+
console.log(`\n ⨠Batch analysis complete (${result.fixCount} fixes applied)`);
|
|
74
|
+
console.log(` š° Cost: ${formatCostBreakdown(result)}`);
|
|
145
75
|
return {
|
|
146
76
|
batch,
|
|
147
|
-
fixes: fixCount > 0 ? fixes : [],
|
|
148
|
-
inputTokens,
|
|
149
|
-
outputTokens,
|
|
150
|
-
cacheCreationTokens,
|
|
151
|
-
cacheReadTokens,
|
|
152
|
-
cost,
|
|
77
|
+
fixes: result.fixCount > 0 ? fixes : [],
|
|
78
|
+
inputTokens: result.tokensUsed.input,
|
|
79
|
+
outputTokens: result.tokensUsed.output,
|
|
80
|
+
cacheCreationTokens: result.tokensUsed.cacheCreation,
|
|
81
|
+
cacheReadTokens: result.tokensUsed.cacheRead,
|
|
82
|
+
cost: result.cost,
|
|
153
83
|
skipped: false,
|
|
154
84
|
};
|
|
155
85
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyse.js","sourceRoot":"","sources":["../../../kosuke/commands/analyse.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"analyse.js","sourceRoot":"","sources":["../../../kosuke/commands/analyse.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GetCode command - Explore GitHub repositories and fetch code implementations
|
|
3
|
+
*
|
|
4
|
+
* This command uses Claude Code Agent to explore any GitHub repository and
|
|
5
|
+
* fetch code implementations based on natural language queries.
|
|
6
|
+
*
|
|
7
|
+
* Usage:
|
|
8
|
+
* kosuke getcode "owner/repo" "query" # Explicit repository
|
|
9
|
+
* kosuke getcode "query" # Infer from query
|
|
10
|
+
* kosuke getcode --template "query" # Use kosuke-template
|
|
11
|
+
*/
|
|
12
|
+
import type { GetCodeOptions, CodeExplorationResult } from '../types.js';
|
|
13
|
+
/**
|
|
14
|
+
* Parse arguments for getcode command
|
|
15
|
+
* Handles multiple argument patterns:
|
|
16
|
+
* kosuke getcode "query"
|
|
17
|
+
* kosuke getcode "owner/repo" "query"
|
|
18
|
+
* kosuke getcode --template "query"
|
|
19
|
+
*/
|
|
20
|
+
export declare function parseGetCodeArgs(args: string[]): GetCodeOptions;
|
|
21
|
+
/**
|
|
22
|
+
* Core getcode logic (can be used programmatically by other commands)
|
|
23
|
+
*/
|
|
24
|
+
export declare function getCodeCore(options: GetCodeOptions): Promise<CodeExplorationResult>;
|
|
25
|
+
/**
|
|
26
|
+
* Main getcode command
|
|
27
|
+
*/
|
|
28
|
+
export declare function getCodeCommand(options: GetCodeOptions): Promise<void>;
|
|
29
|
+
//# sourceMappingURL=getcode.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getcode.d.ts","sourceRoot":"","sources":["../../../kosuke/commands/getcode.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAMH,OAAO,KAAK,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEzE;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,cAAc,CAsC/D;AAkDD;;GAEG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAoCzF;AAsCD;;GAEG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAyC3E"}
|
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GetCode command - Explore GitHub repositories and fetch code implementations
|
|
3
|
+
*
|
|
4
|
+
* This command uses Claude Code Agent to explore any GitHub repository and
|
|
5
|
+
* fetch code implementations based on natural language queries.
|
|
6
|
+
*
|
|
7
|
+
* Usage:
|
|
8
|
+
* kosuke getcode "owner/repo" "query" # Explicit repository
|
|
9
|
+
* kosuke getcode "query" # Infer from query
|
|
10
|
+
* kosuke getcode --template "query" # Use kosuke-template
|
|
11
|
+
*/
|
|
12
|
+
import { writeFileSync } from 'fs';
|
|
13
|
+
import { resolveRepository } from '../utils/repository-resolver.js';
|
|
14
|
+
import { ensureRepoReady } from '../utils/repository-manager.js';
|
|
15
|
+
import { runAgent, formatCostBreakdown } from '../utils/claude-agent.js';
|
|
16
|
+
/**
|
|
17
|
+
* Parse arguments for getcode command
|
|
18
|
+
* Handles multiple argument patterns:
|
|
19
|
+
* kosuke getcode "query"
|
|
20
|
+
* kosuke getcode "owner/repo" "query"
|
|
21
|
+
* kosuke getcode --template "query"
|
|
22
|
+
*/
|
|
23
|
+
export function parseGetCodeArgs(args) {
|
|
24
|
+
const flags = {
|
|
25
|
+
template: args.includes('--template') || args.includes('-t'),
|
|
26
|
+
output: args.find((arg) => arg.startsWith('--output='))?.split('=')[1],
|
|
27
|
+
};
|
|
28
|
+
// Remove flags from args to get positional arguments
|
|
29
|
+
const positionalArgs = args.filter((arg) => !arg.startsWith('--') && !arg.startsWith('-') && arg !== 'getcode');
|
|
30
|
+
// Determine repo and query based on number of positional args
|
|
31
|
+
let repo;
|
|
32
|
+
let query;
|
|
33
|
+
if (positionalArgs.length === 0) {
|
|
34
|
+
throw new Error('Missing query argument.\n' +
|
|
35
|
+
'Usage:\n' +
|
|
36
|
+
' kosuke getcode "query"\n' +
|
|
37
|
+
' kosuke getcode "owner/repo" "query"\n' +
|
|
38
|
+
' kosuke getcode --template "query"');
|
|
39
|
+
}
|
|
40
|
+
else if (positionalArgs.length === 1) {
|
|
41
|
+
// Single argument: treat as query
|
|
42
|
+
query = positionalArgs[0];
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
// Two or more arguments: first is repo, second is query
|
|
46
|
+
repo = positionalArgs[0];
|
|
47
|
+
query = positionalArgs[1];
|
|
48
|
+
}
|
|
49
|
+
return {
|
|
50
|
+
repo,
|
|
51
|
+
query,
|
|
52
|
+
template: flags.template,
|
|
53
|
+
output: flags.output,
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Build system prompt for code exploration
|
|
58
|
+
*/
|
|
59
|
+
function buildExplorationSystemPrompt(repoName, repoPath) {
|
|
60
|
+
return `You are an expert code exploration agent analyzing the repository: ${repoName}
|
|
61
|
+
|
|
62
|
+
**Your Purpose:**
|
|
63
|
+
Users will ask you to find reference implementations they can learn from and adapt for
|
|
64
|
+
their own projects. Your job is to provide COMPLETE, USABLE code examples with full context.
|
|
65
|
+
|
|
66
|
+
**When a user asks about a feature/implementation:**
|
|
67
|
+
|
|
68
|
+
1. **Locate ALL relevant files** - Find the complete implementation, not just snippets
|
|
69
|
+
2. **Show COMPLETE code** - Include entire files or substantial sections, never truncate
|
|
70
|
+
3. **Include dependencies** - Show imports, types, configurations, utilities used
|
|
71
|
+
4. **Explain architecture** - How components connect, data flow, design patterns
|
|
72
|
+
5. **Provide context** - Related files, setup requirements, usage examples
|
|
73
|
+
|
|
74
|
+
**Response Structure:**
|
|
75
|
+
|
|
76
|
+
1. **Overview** - What you found and where it's located
|
|
77
|
+
2. **Complete Code Snippets** - Full, copy-ready implementations with file paths
|
|
78
|
+
3. **Implementation Details** - How it works, key patterns, important decisions
|
|
79
|
+
4. **Dependencies & Setup** - Required imports, configurations, related utilities
|
|
80
|
+
5. **Usage Examples** - How the feature is actually used in the codebase
|
|
81
|
+
|
|
82
|
+
**Critical Rules:**
|
|
83
|
+
- NEVER truncate code - show complete implementations
|
|
84
|
+
- ALWAYS include file paths in code blocks
|
|
85
|
+
- ALWAYS show imports and type definitions
|
|
86
|
+
- ALWAYS explain what makes this implementation work
|
|
87
|
+
- If a feature spans multiple files, show ALL of them
|
|
88
|
+
- Include configuration, setup, and initialization code
|
|
89
|
+
|
|
90
|
+
**Format all code snippets as:**
|
|
91
|
+
\`\`\`language
|
|
92
|
+
// Complete implementation from: path/to/file.ext
|
|
93
|
+
[full code here]
|
|
94
|
+
\`\`\`
|
|
95
|
+
|
|
96
|
+
Your goal: Provide reference implementations so complete that users can understand and
|
|
97
|
+
adapt them immediately.
|
|
98
|
+
|
|
99
|
+
**Repository Details:**
|
|
100
|
+
- Name: ${repoName}
|
|
101
|
+
- Local Path: ${repoPath}`;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Core getcode logic (can be used programmatically by other commands)
|
|
105
|
+
*/
|
|
106
|
+
export async function getCodeCore(options) {
|
|
107
|
+
const { repo, query, template = false } = options;
|
|
108
|
+
console.log('š Resolving repository...');
|
|
109
|
+
// Resolve repository (infer if needed)
|
|
110
|
+
const repoIdentifier = await resolveRepository(repo, query, template, process.env.GITHUB_TOKEN);
|
|
111
|
+
console.log(` ā
Repository: ${repoIdentifier}\n`);
|
|
112
|
+
// Ensure repository is ready (clone or update)
|
|
113
|
+
console.log('š„ Preparing repository...');
|
|
114
|
+
const repoInfo = await ensureRepoReady(repoIdentifier);
|
|
115
|
+
// Explore code with Claude
|
|
116
|
+
console.log(`š¤ Exploring code with Claude...\n`);
|
|
117
|
+
const systemPrompt = buildExplorationSystemPrompt(repoIdentifier, repoInfo.localPath);
|
|
118
|
+
const agentResult = await runAgent(query, {
|
|
119
|
+
systemPrompt,
|
|
120
|
+
cwd: repoInfo.localPath,
|
|
121
|
+
maxTurns: 20,
|
|
122
|
+
verbosity: 'normal',
|
|
123
|
+
});
|
|
124
|
+
console.log(`\nā
Exploration complete!\n`);
|
|
125
|
+
return {
|
|
126
|
+
repository: repoIdentifier,
|
|
127
|
+
query,
|
|
128
|
+
response: agentResult.response,
|
|
129
|
+
filesReferenced: Array.from(agentResult.filesReferenced),
|
|
130
|
+
tokensUsed: agentResult.tokensUsed,
|
|
131
|
+
cost: agentResult.cost,
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Format exploration result for display
|
|
136
|
+
*/
|
|
137
|
+
function formatExplorationResult(result) {
|
|
138
|
+
const header = `# Code from ${result.repository}
|
|
139
|
+
|
|
140
|
+
**Query:** ${result.query}
|
|
141
|
+
|
|
142
|
+
---
|
|
143
|
+
|
|
144
|
+
`;
|
|
145
|
+
const footer = `
|
|
146
|
+
|
|
147
|
+
---
|
|
148
|
+
|
|
149
|
+
## Token Usage
|
|
150
|
+
|
|
151
|
+
- **Input:** ${result.tokensUsed.input.toLocaleString()} tokens
|
|
152
|
+
- **Output:** ${result.tokensUsed.output.toLocaleString()} tokens${result.tokensUsed.cacheCreation > 0
|
|
153
|
+
? `\n- **Cache Creation:** ${result.tokensUsed.cacheCreation.toLocaleString()} tokens`
|
|
154
|
+
: ''}${result.tokensUsed.cacheRead > 0
|
|
155
|
+
? `\n- **Cache Read:** ${result.tokensUsed.cacheRead.toLocaleString()} tokens`
|
|
156
|
+
: ''}
|
|
157
|
+
- **Cost:** $${result.cost.toFixed(4)}
|
|
158
|
+
|
|
159
|
+
${result.filesReferenced.length > 0 ? `**Files Referenced:** ${result.filesReferenced.join(', ')}` : ''}
|
|
160
|
+
`;
|
|
161
|
+
return header + result.response + footer;
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* Main getcode command
|
|
165
|
+
*/
|
|
166
|
+
export async function getCodeCommand(options) {
|
|
167
|
+
console.log('š Starting Code Exploration...\n');
|
|
168
|
+
try {
|
|
169
|
+
// Validate environment
|
|
170
|
+
if (!process.env.ANTHROPIC_API_KEY) {
|
|
171
|
+
throw new Error('ANTHROPIC_API_KEY environment variable is required');
|
|
172
|
+
}
|
|
173
|
+
// Execute core logic
|
|
174
|
+
const result = await getCodeCore(options);
|
|
175
|
+
// Display cost breakdown
|
|
176
|
+
const costBreakdown = formatCostBreakdown({
|
|
177
|
+
cost: result.cost,
|
|
178
|
+
tokensUsed: result.tokensUsed,
|
|
179
|
+
fixCount: 0,
|
|
180
|
+
response: '',
|
|
181
|
+
filesReferenced: new Set(result.filesReferenced),
|
|
182
|
+
});
|
|
183
|
+
console.log(`š° Cost: ${costBreakdown}\n`);
|
|
184
|
+
// Format and display result
|
|
185
|
+
const formattedOutput = formatExplorationResult(result);
|
|
186
|
+
// Save to file if --output flag is provided
|
|
187
|
+
if (options.output) {
|
|
188
|
+
writeFileSync(options.output, formattedOutput, 'utf-8');
|
|
189
|
+
console.log(`š Output saved to: ${options.output}\n`);
|
|
190
|
+
}
|
|
191
|
+
else {
|
|
192
|
+
// Display to stdout
|
|
193
|
+
console.log('ā'.repeat(60));
|
|
194
|
+
console.log(formattedOutput);
|
|
195
|
+
console.log('ā'.repeat(60));
|
|
196
|
+
}
|
|
197
|
+
console.log('\nā
Code exploration completed successfully!');
|
|
198
|
+
}
|
|
199
|
+
catch (error) {
|
|
200
|
+
console.error('\nā Code exploration failed:', error);
|
|
201
|
+
throw error;
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
//# sourceMappingURL=getcode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getcode.js","sourceRoot":"","sources":["../../../kosuke/commands/getcode.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lint.d.ts","sourceRoot":"","sources":["../../../kosuke/commands/lint.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAQ/C;;;GAGG;AACH,wBAAsB,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"lint.d.ts","sourceRoot":"","sources":["../../../kosuke/commands/lint.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAQ/C;;;GAGG;AACH,wBAAsB,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAiDxE;AAkED;;GAEG;AACH,wBAAsB,WAAW,CAAC,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAmD1E"}
|
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Strategy: Run linter, give errors to Claude, let it fix them
|
|
5
5
|
*/
|
|
6
|
-
import { query } from '@anthropic-ai/claude-agent-sdk';
|
|
7
6
|
import { runLint } from '../utils/validator.js';
|
|
8
7
|
import { runWithPR } from '../utils/pr-orchestrator.js';
|
|
8
|
+
import { runAgent } from '../utils/claude-agent.js';
|
|
9
9
|
/**
|
|
10
10
|
* Run Claude-powered lint fixing
|
|
11
11
|
* Exported so other commands can use it
|
|
@@ -41,42 +41,15 @@ ${lintErrors}
|
|
|
41
41
|
- Every error you identify MUST be fixed
|
|
42
42
|
|
|
43
43
|
Start by reading the files with errors and fixing them one by one.`;
|
|
44
|
-
const options = {
|
|
45
|
-
model: 'claude-sonnet-4-5',
|
|
46
|
-
systemPrompt,
|
|
47
|
-
maxTurns: 20,
|
|
48
|
-
cwd: workspaceRoot,
|
|
49
|
-
permissionMode: 'bypassPermissions',
|
|
50
|
-
};
|
|
51
44
|
try {
|
|
52
|
-
const
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
const text = block.text.trim();
|
|
61
|
-
// Show key insights
|
|
62
|
-
if (text.includes('fix') ||
|
|
63
|
-
text.includes('error') ||
|
|
64
|
-
text.includes('ā
') ||
|
|
65
|
-
text.includes('ā')) {
|
|
66
|
-
console.log(` š ${text}`);
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
else if (block.type === 'tool_use') {
|
|
70
|
-
if (block.name === 'write' || block.name === 'search_replace') {
|
|
71
|
-
fixCount++;
|
|
72
|
-
console.log(` š§ Applying fix ${fixCount}...`);
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
console.log(`\n⨠Claude completed (${fixCount} fixes applied)`);
|
|
79
|
-
return fixCount > 0;
|
|
45
|
+
const result = await runAgent(promptText, {
|
|
46
|
+
systemPrompt,
|
|
47
|
+
maxTurns: 20,
|
|
48
|
+
cwd: workspaceRoot,
|
|
49
|
+
verbosity: 'normal',
|
|
50
|
+
});
|
|
51
|
+
console.log(`\n⨠Claude completed (${result.fixCount} fixes applied)`);
|
|
52
|
+
return result.fixCount > 0;
|
|
80
53
|
}
|
|
81
54
|
catch (error) {
|
|
82
55
|
console.error('\nā Error during Claude fixing:', error);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lint.js","sourceRoot":"","sources":["../../../kosuke/commands/lint.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"lint.js","sourceRoot":"","sources":["../../../kosuke/commands/lint.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"requirements.d.ts","sourceRoot":"","sources":["../../../kosuke/commands/requirements.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;
|
|
1
|
+
{"version":3,"file":"requirements.d.ts","sourceRoot":"","sources":["../../../kosuke/commands/requirements.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAqUH;;GAEG;AACH,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CAazD"}
|