Skills Agentes

Canvas

Crea, inspecciona y actualiza tableros Obsidian JSON Canvas con nodos de texto, archivo, enlace, grupo y arista. Para estado del canvas, mapas visuales, zonas y diseños espaciales.

Estrellas
13.5k

en todo el repo

Actividad
56

0–100, la ruta de este skill

Actualizado
el mes pasado

último commit aquí

Commits
1

últimos 90 días

Contexto
1.3k tok

75 tok en reposo

Paquete
2 archivos

14 KB

Instalar

Funciona con cualquier agente que lea SKILL.md

npx -y skills add AgriciDaniel/claude-obsidian --skill canvas --agent claude-code

Se instala solo en este repositorio.

Este skill reads environment config.

Qué hace

  • Crea, inspecciona y actualiza tableros Obsidian JSON Canvas con nodos de texto, archivo, enlace y grupo
  • Guarda los tableros en `wiki/canvases/` y usa `wiki/canvases/main.canvas` como tablero por defecto
  • Valida IDs únicos, dimensiones, rutas relativas al vault y extremos de aristas antes de previsualizar
  • Empaqueta cada mutación en una transacción `claude-obsidian.transaction.v1` inspeccionable antes de aplicarla
  • Informa del estado de un canvas: número de nodos, etiquetas de grupo, aristas rotas y archivos objetivo ausentes

Úsalo cuando

  • Se pide crear, actualizar o consultar un canvas, mapa visual o diseño espacial en Obsidian
  • Se quiere añadir notas del vault o medios a un archivo `.canvas`
  • Se necesita un estado o listado de un canvas existente

No lo uses cuando

    Qué lo activa

    Di cualquiera de estas frases y el agente debería cargar este skill.

    • Crea un canvas con este mapa de investigación
    • Añade esta nota al canvas
    • Pon esto en el canvas
    • Muéstrame el estado del canvas principal

    SKILL.md

    En inglés

    Canvas

    Treat a canvas as a vault-scoped JSON Canvas document. Keep reads read-only and route every requested mutation through one recoverable transaction.

    Resolve the installed product root from this skill's own location, not from the vault or current working directory:

    PRODUCT_ROOT=/absolute/path/to/installed/claude-obsidian
    CORE="$PRODUCT_ROOT/scripts/claude-obsidian.py"
    test -f "$CORE"
    

    Choose the syntax source

    Prefer a separately installed kepano/obsidian-skills json-canvas skill for format details. Otherwise read references/canvas-spec.md. The open standard is JSON Canvas 1.0.

    Use this skill for vault workflow and transaction safety even when an upstream syntax skill is available.

    Scope

    • Resolve the user vault before reading. Never derive it from plugin files.
    • Store boards under wiki/canvases/; use wiki/canvases/main.canvas only as the default when the user did not name a board.
    • Treat wiki/canvases/index.md as an optional catalog. Update it only when a canvas is created, renamed, or removed.
    • Use vault-relative paths in file and background; reject absolute paths, .. traversal, home shortcuts, and paths that escape through symlinks.
    • Reference only files already inside the vault. If an optional capture or media capability is detected, compose with it and consume its returned vault-relative path. Do not assume a particular plugin, command, or session log, and do not download or copy assets in this skill.
    • Use link nodes for URLs. Accept HTTPS URLs only; a link node does not grant permission to fetch the page. Creating its JSON makes no request, but opening it in Obsidian may fetch Open Graph metadata from that URL's host. Disclose that render-time egress and confirm it is acceptable; otherwise use a text node containing the URL.

    Read-only operations

    For status or list requests, parse the selected .canvas files and report node counts, group labels, broken edge endpoints, and missing vault-relative file targets. If the default canvas is absent, report that fact and offer a creation preview; do not create it during a status request.

    Draft a mutation

    1. Read the entire canvas and any catalog target. Record each expected SHA-256, or null for a file that must be absent.
    2. Preserve unknown JSON fields and existing array order. The node array is bottom-to-top z-order.
    3. Draft the requested nodes or edges:
      • Give every node and edge a unique ID. Prefer a random 16-character lowercase hexadecimal ID and verify it is unused.
      • Require integer x, y, width, and height values for every node.
      • Use text, file, link, or group exactly as defined by JSON Canvas.
      • Require every fromNode and toNode to reference an existing or newly drafted node.
    4. Position new content deliberately. A group is a visual container, not a parent. Use 20 px inner padding and 40 px gaps, wrap to a new row when needed, and preview any group expansion.
    5. Serialize valid UTF-8 JSON with top-level nodes and edges arrays.

    Minimal node examples:

    {
      "nodes": [
        {
          "id": "6f0ad84f44ce9c17",
          "type": "text",
          "text": "# Research map\n\nA concise orientation card.",
          "x": 0,
          "y": 0,
          "width": 400,
          "height": 180
        },
        {
          "id": "a1b2c3d4e5f67890",
          "type": "file",
          "file": "wiki/concepts/Contextual Retrieval.md",
          "x": 460,
          "y": 0,
          "width": 400,
          "height": 240
        }
      ],
      "edges": []
    }
    

    Use file plus optional subpath: "#Heading" for notes, images, PDFs, and other vault files. Use url only on a link node. Escape line breaks in JSON strings as \n, not as literal backslash-plus-n text.

    Preview and apply

    Validate before showing the preview:

    • JSON parses and uses supported node types.
    • IDs are unique and edge endpoints exist.
    • dimensions are positive integers;
    • file and background paths are safe, vault-relative, and present;
    • new nodes do not unintentionally overlap or overflow their requested group.

    Build one claude-obsidian.transaction.v1 bundle with operation type canvas. Include the canvas and the catalog in that same bundle when the catalog changes. Read operation-transactions.md, then inspect the bundle before applying it:

    python3 "$CORE" transaction inspect BUNDLE --vault VAULT
    # Set APPROVAL_SHA256 to the inspect result's approval_sha256 after review.
    python3 "$CORE" transaction apply BUNDLE --vault VAULT \
      --approved-plan-sha256 "$APPROVAL_SHA256"
    

    For removals, replacements, renames, or other destructive changes, obtain explicit consent after presenting the preview. Report the operation ID, exact changed paths, board name, node IDs, and final positions. Do not commit Git.

    Reproducido de AgriciDaniel/claude-obsidian bajo licencia MIT. Leer esta página en markdown.

    Archivos

    2 archivos en el paquete. Solo se lee SKILL.md al activarse — las referencias se cargan si el skill decide que las necesita.

    Antes de instalar

    Necesita el core `claude-obsidian.py` instalado y un vault de Obsidian ya resuelto.

    Necesita en el PATH:python3

    Variables de entorno:APPROVAL_SHA256COREPRODUCT_ROOT

    Detalles

    Categoría
    Productividad
    Licencia
    MIT
    Recursos incluidos
    referencias
    Código fuente
    Ver SKILL.md

    Etiquetas

    Más de AgriciDaniel/claude-obsidian

    Este repo incluye 15 skills. Si instalas uno, normalmente ya tienes los demás.

    Wiki

    13.5k

    Inicializa, adopta y enruta el trabajo hacia un vault de Obsidian separado a través del core portátil `claude-obsidian`. Para configurar el vault o elegir el sub-skill correcto.

    Costo de contexto al activarse
    1.3k tok
    Tamaño del paquete
    11 archivos
    Última actualización
    hace 3 días
    productividad

    Ejecuta un bucle de investigación acotado y basado en fuentes, redacta un dossier citado y opcionalmente propone una fusión revisada aparte en el vault canónico.

    Costo de contexto al activarse
    1.6k tok
    Tamaño del paquete
    2 archivos
    Última actualización
    el mes pasado
    investigacion

    Planifica y, con consentimiento explícito de red, usa un limpiador externo Defuddle opcional para extraer páginas HTTPS tipo artículo como Markdown.

    Costo de contexto al activarse
    1.1k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    el mes pasado
    investigacion

    Explica, redacta y valida archivos Obsidian Bases `.base` con filtros, fórmulas, propiedades, resúmenes y vistas de tabla, tarjetas o lista.

    Costo de contexto al activarse
    1.1k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    el mes pasado
    productividad

    Explica, redacta o valida la sintaxis de Obsidian Flavored Markdown: propiedades, wikilinks, embeds, callouts, tags, comentarios, resaltados, referencias de bloque, matemáticas y Mermaid.

    Costo de contexto al activarse
    1.1k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    el mes pasado
    productividad

    Save

    13.5k

    Guarda una respuesta, decisión, insight o resumen de sesión seleccionado por el usuario en un vault de Obsidian como una única transacción revisada, no cuando aporta un archivo o URL.

    Costo de contexto al activarse
    1.2k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    el mes pasado
    productividad

    Skills relacionados

    Explica, redacta y valida archivos Obsidian Bases `.base` con filtros, fórmulas, propiedades, resúmenes y vistas de tabla, tarjetas o lista.

    Costo de contexto al activarse
    1.1k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    el mes pasado
    productividad

    Explica, redacta o valida la sintaxis de Obsidian Flavored Markdown: propiedades, wikilinks, embeds, callouts, tags, comentarios, resaltados, referencias de bloque, matemáticas y Mermaid.

    Costo de contexto al activarse
    1.1k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    el mes pasado
    productividad

    Save

    13.5k

    Guarda una respuesta, decisión, insight o resumen de sesión seleccionado por el usuario en un vault de Obsidian como una única transacción revisada, no cuando aporta un archivo o URL.

    Costo de contexto al activarse
    1.2k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    el mes pasado
    productividad