---
name: delete_obsidian_note
kind: function
lang: py
domain: obsidian
version: "1.0.0"
purity: impure
signature: "def delete_obsidian_note(path: str) -> bool"
description: "Borra un archivo de nota Markdown de Obsidian del disco. Por seguridad solo borra un archivo concreto, nunca un directorio. No depende de la app GUI de Obsidian: opera directamente sobre el archivo .md plano."
tags: [obsidian, markdown, delete, write, notes]
uses_functions: []
uses_types: []
returns: []
returns_optional: false
error_type: "error_go_core"
imports: ["os"]
params:
  - name: path
    desc: "ruta al archivo .md de la nota a borrar"
output: "True (bool) si el archivo fue borrado correctamente"
tested: true
tests:
  - "borra archivo existente y devuelve true"
  - "archivo inexistente lanza filenotfounderror"
  - "directorio lanza isadirectoryerror"
  - "no borra otros archivos"
test_file_path: "python/functions/obsidian/delete_obsidian_note_test.py"
file_path: "python/functions/obsidian/delete_obsidian_note.py"
---

## Ejemplo

```python
import sys, os
sys.path.insert(0, os.path.join("python", "functions"))
from obsidian import delete_obsidian_note

ok = delete_obsidian_note("/home/me/vault/Inbox/Idea descartada.md")
print(ok)   # True
```

## Cuando usarla

Cuando quieras eliminar una nota concreta de un vault de Obsidian desde codigo o un agente: limpiar el Inbox, borrar notas generadas temporalmente, o eliminar una nota tras consolidar su contenido en otra. Para varias notas, llama una vez por archivo (no acepta directorios).

## Gotchas

- **Borra del disco** (I/O impuro) y de forma **irreversible**: no manda a papelera, hace `os.remove`. El archivo no se puede recuperar salvo backup del vault.
- **Solo archivos, nunca directorios**: lanza `IsADirectoryError` si el path apunta a una carpeta, para evitar borrados masivos accidentales.
- **No respeta locks de la app GUI**: si Obsidian tiene la nota abierta, borrarla en disco dejara la pestana huerfana en el editor; al guardar desde Obsidian podria recrearse el archivo.
- Lanza `FileNotFoundError` si el archivo no existe.
- No borra archivos asociados (adjuntos, attachments referenciados): solo el `.md` indicado.
