@@ -157,12 +157,18 @@ func (t *Toolbox) GetDiagnosticCommands() ([]DiagnosticCommand, error) {
157157 return []DiagnosticCommand {}, nil
158158 }
159159
160- cfg , err := loadDiagnosticsConfigEmbedded ()
160+ // Load playbook from the extracted toolbox archive only
161+ playbookPath := filepath .Join (t .TempDir , "toolbox" , "playbook.yaml" )
162+ data , err := os .ReadFile (playbookPath )
161163 if err != nil {
162- return []DiagnosticCommand {}, err
164+ return []DiagnosticCommand {}, fmt .Errorf ("failed to read playbook.yaml from toolbox: %w" , err )
165+ }
166+ var cfg PlaybookConfig
167+ if err := yaml .Unmarshal (data , & cfg ); err != nil {
168+ return []DiagnosticCommand {}, fmt .Errorf ("failed to parse playbook.yaml: %w" , err )
163169 }
164170 // Store playbook on toolbox for later use (e.g., system prompt)
165- t .Playbook = cfg
171+ t .Playbook = & cfg
166172
167173 toolboxPath := path .Join (t .TempDir , "toolbox" )
168174 storeDir := filepath .Join (toolboxPath , "nix" , "store" )
@@ -228,42 +234,6 @@ func (t *Toolbox) GetDiagnosticCommands() ([]DiagnosticCommand, error) {
228234 return result , nil
229235}
230236
231- // loadDiagnosticsConfig reads diagnostics.yaml from the working directory or alongside the executable.
232- func loadDiagnosticsConfig () (* PlaybookConfig , error ) {
233- pathsToTry := []string {"diagnostics.yaml" }
234- if exe , err := os .Executable (); err == nil {
235- pathsToTry = append (pathsToTry , filepath .Join (filepath .Dir (exe ), "diagnostics.yaml" ))
236- }
237-
238- var data []byte
239- var readErr error
240- for _ , p := range pathsToTry {
241- data , readErr = os .ReadFile (p )
242- if readErr == nil {
243- break
244- }
245- }
246- if readErr != nil {
247- return nil , readErr
248- }
249-
250- var cfg PlaybookConfig
251- if err := yaml .Unmarshal (data , & cfg ); err != nil {
252- return nil , err
253- }
254- return & cfg , nil
255- }
256-
257- // loadDiagnosticsConfigEmbedded unmarshals the embedded 60-second playbook
258- func loadDiagnosticsConfigEmbedded () (* PlaybookConfig , error ) {
259- data := embeddedPlaybook ()
260- var cfg PlaybookConfig
261- if err := yaml .Unmarshal (data , & cfg ); err != nil {
262- return nil , err
263- }
264- return & cfg , nil
265- }
266-
267237// ExecuteDiagnosticCommand executes a single diagnostic command and returns its output
268238func (t * Toolbox ) ExecuteDiagnosticCommand (cmd DiagnosticCommand ) (string , error ) {
269239 if t .TempDir == "" {
0 commit comments