Add announcement

This commit is contained in:
Saoud Rizwan
2024-09-02 01:15:22 -04:00
parent b02692e2f7
commit 520ef5281e
6 changed files with 14 additions and 28 deletions

View File

@@ -4,6 +4,10 @@ All notable changes to the "claude-dev" extension will be documented in this fil
<!-- Check [Keep a Changelog](http://keepachangelog.com/) for recommendations on how to structure this file. -->
## [1.5.13]
- New terminal emulator! When Claude runs commands, you can now type directly in the terminal (+ support for Python environments)
## [1.5.6]
- You can now edit Claude's changes before accepting! When he edits or creates a file, you can modify his changes directly in the right side of the diff view (+ hover over the 'Revert Block' arrow button in the center to undo `// rest of code here` shenanigans)

View File

@@ -2,7 +2,7 @@
"name": "claude-dev",
"displayName": "Claude Dev",
"description": "Autonomous coding agent right in your IDE, capable of creating/editing files, executing commands, and more with your permission every step of the way.",
"version": "1.5.12",
"version": "1.5.13",
"icon": "icon.png",
"engines": {
"vscode": "^1.84.0"

View File

@@ -91,9 +91,7 @@ Default Shell: ${defaultShell}${await (async () => {
if (pythonEnvPath) {
return `\nPython Environment: ${pythonEnvPath}`
}
} catch (error) {
console.log("Failed to get python env path", error)
}
} catch {}
return ""
})()}
Home Directory: ${os.homedir()}

View File

@@ -33,7 +33,7 @@ export class ClaudeDevProvider implements vscode.WebviewViewProvider {
private disposables: vscode.Disposable[] = []
private view?: vscode.WebviewView | vscode.WebviewPanel
private claudeDev?: ClaudeDev
private latestAnnouncementId = "aug-31-2024-1" // update to some unique identifier when we add a new announcement
private latestAnnouncementId = "sep-2-2024" // update to some unique identifier when we add a new announcement
constructor(readonly context: vscode.ExtensionContext, private readonly outputChannel: vscode.OutputChannel) {
this.outputChannel.appendLine("ClaudeDevProvider instantiated")
@@ -166,14 +166,7 @@ export class ClaudeDevProvider implements vscode.WebviewViewProvider {
async initClaudeDevWithTask(task?: string, images?: string[]) {
await this.clearTask() // ensures that an exising task doesn't exist before starting a new one, although this shouldn't be possible since user must clear task before starting a new one
const { apiConfiguration, customInstructions, alwaysAllowReadOnly } = await this.getState()
this.claudeDev = new ClaudeDev(
this,
apiConfiguration,
customInstructions,
alwaysAllowReadOnly,
task,
images
)
this.claudeDev = new ClaudeDev(this, apiConfiguration, customInstructions, alwaysAllowReadOnly, task, images)
}
async initClaudeDevWithHistoryItem(historyItem: HistoryItem) {
@@ -472,13 +465,8 @@ export class ClaudeDevProvider implements vscode.WebviewViewProvider {
}
async getStateToPostToWebview() {
const {
apiConfiguration,
lastShownAnnouncementId,
customInstructions,
alwaysAllowReadOnly,
taskHistory,
} = await this.getState()
const { apiConfiguration, lastShownAnnouncementId, customInstructions, alwaysAllowReadOnly, taskHistory } =
await this.getState()
return {
version: this.context.extension?.packageJSON?.version ?? "",
apiConfiguration,

View File

@@ -4,14 +4,12 @@ export async function getPythonEnvPath(): Promise<string | undefined> {
const pythonExtension = vscode.extensions.getExtension("ms-python.python")
if (!pythonExtension) {
console.log("Python extension is not installed.")
return undefined
}
// Ensure the Python extension is activated
if (!pythonExtension.isActive) {
// if the python extension is not active, we can assume the project is not a python project
console.log("Python extension is not active.")
return undefined
}
@@ -20,12 +18,10 @@ export async function getPythonEnvPath(): Promise<string | undefined> {
// Get the active environment path for the current workspace
const workspaceFolder = vscode.workspace.workspaceFolders?.[0]
if (!workspaceFolder) {
console.log("No workspace folder is open.")
return undefined
}
// Get the active python environment path for the current workspace
const pythonEnv = await pythonApi?.environments?.getActiveEnvironmentPath(workspaceFolder.uri)
console.log("Python environment path:", pythonEnv)
if (pythonEnv && pythonEnv.path) {
return pythonEnv.path
} else {

View File

@@ -30,6 +30,10 @@ const Announcement = ({ version, hideAnnouncement, apiConfiguration, vscodeUriSc
🎉{" "}New in v{version}
</h3>
<ul style={{ margin: "0 0 8px", paddingLeft: "12px" }}>
<li>
New terminal emulator! When Claude runs commands, you can now type directly in the terminal (+
support for Python environments)
</li>
<li>
<b>You can now edit Claude's changes before accepting!</b> When he edits or creates a file, you can
modify his changes directly in the right side of the diff view (+ hover over the 'Revert Block'
@@ -43,10 +47,6 @@ const Announcement = ({ version, hideAnnouncement, apiConfiguration, vscodeUriSc
Adds new <code>search_files</code> tool that lets Claude perform regex searches in your project,
making it easy for him to refactor code, address TODOs and FIXMEs, remove dead code, and more!
</li>
<li>
Adds "Always allow read-only operations" setting to let Claude read files and view directories
without needing to approve (<b>off</b> by default).
</li>
</ul>
<p style={{ margin: "0" }}>
Follow me for more updates!{" "}