Skip to content

CLI Commands Resource

CLICommandsResource(cli)

Bases: BaseCLIResource

CLI resource for Obsidian command operations.

Attributes:

Name Type Description
_cli

Reference to the parent ObsidianCLI instance.

Source code in src/aiobsidian/cli/_base.py
def __init__(self, cli: ObsidianCLI) -> None:
    self._cli = cli

execute(command_id) async

Execute an Obsidian command by its ID.

Parameters:

Name Type Description Default
command_id str

Obsidian command identifier (e.g. "editor:toggle-bold").

required
Source code in src/aiobsidian/cli/commands.py
async def execute(self, command_id: str) -> None:
    """Execute an Obsidian command by its ID.

    Args:
        command_id: Obsidian command identifier
            (e.g. ``"editor:toggle-bold"``).
    """
    await self._cli._execute("command", params={"id": command_id})

list(*, filter=None) async

List available Obsidian commands.

Parameters:

Name Type Description Default
filter str | None

Filter commands by ID prefix.

None

Returns:

Type Description
list[dict[str, Any]]

List of command objects.

Source code in src/aiobsidian/cli/commands.py
async def list(self, *, filter: str | None = None) -> list[dict[str, Any]]:
    """List available Obsidian commands.

    Args:
        filter: Filter commands by ID prefix.

    Returns:
        List of command objects.
    """
    params = {"filter": filter} if filter else None
    output = await self._cli._execute("commands", params=params)
    result: list[dict[str, Any]] = json.loads(output)
    return result