Просмотр исходного кода

feat: add OPENCODE_FAKE_VCS flag for VCS testing and update todo tracking instructions

Dax Raad 3 месяцев назад
Родитель
Сommit
22821744ef

+ 1 - 0
packages/opencode/src/flag/flag.ts

@@ -9,6 +9,7 @@ export namespace Flag {
   export const OPENCODE_DISABLE_LSP_DOWNLOAD = truthy("OPENCODE_DISABLE_LSP_DOWNLOAD")
   export const OPENCODE_ENABLE_EXPERIMENTAL_MODELS = truthy("OPENCODE_ENABLE_EXPERIMENTAL_MODELS")
   export const OPENCODE_DISABLE_AUTOCOMPACT = truthy("OPENCODE_DISABLE_AUTOCOMPACT")
+  export const OPENCODE_FAKE_VCS = process.env["OPENCODE_FAKE_VCS"]
 
   // Experimental
   export const OPENCODE_EXPERIMENTAL_WATCHER = truthy("OPENCODE_EXPERIMENTAL_WATCHER")

+ 2 - 0
packages/opencode/src/project/project.ts

@@ -4,6 +4,7 @@ import path from "path"
 import { $ } from "bun"
 import { Storage } from "../storage/storage"
 import { Log } from "../util/log"
+import { Flag } from "@/flag/flag"
 
 export namespace Project {
   const log = Log.create({ service: "project" })
@@ -31,6 +32,7 @@ export namespace Project {
       const project: Info = {
         id: "global",
         worktree: "/",
+        vcs: Info.shape.vcs.parse(Flag.OPENCODE_FAKE_VCS),
         time: {
           created: Date.now(),
         },

+ 2 - 0
packages/opencode/src/session/prompt/anthropic.txt

@@ -93,6 +93,8 @@ user: What is the codebase structure?
 assistant: [Uses the Task tool]
 </example>
 
+IMPORTANT: Always use the TodoWrite tool to plan and track tasks throughout the conversation.
+
 # Code References
 
 When referencing specific functions or pieces of code include the pattern `file_path:line_number` to allow the user to easily navigate to the source code location.