Agent skill

Obsidian Debug Bundle

by jeremylongshore in jeremylongshore/tons-of-skills-marketplace

Collect Obsidian plugin debug evidence for support and troubleshooting.

MITAuto-check passedTesting & QA

Install Obsidian Debug Bundle

skills CLI
$ npx skills add jeremylongshore/tons-of-skills-marketplace --skill obsidian-debug-bundle -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install jeremylongshore/tons-of-skills-marketplace obsidian-debug-bundle --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/jeremylongshore/tons-of-skills-marketplace.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/.curated/obsidian-debug-bundle .claude/skills/obsidian-debug-bundle && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
obsidian-debug-bundle
GitHub stars
2.8k
Token cost
~2.2k tokens
SKILL.md length
380 words
Files
2 (incl. references)
Skills in repo
3,342
Repo updated
First seen
Licence
MIT

At a glance

Collect Obsidian plugin debug evidence for support and troubleshooting.

  • Works in 8 steps: Identify the Vault Path → Collect Obsidian Version and App Settings → List Installed Plugins and Their Versions → …
  • Encountering persistent issues
  • SKILL.md covers Current State, Overview, Prerequisites and Instructions, plus 5 more sections
  • Calls python3 and node

What it does

Obsidian Debug Bundle is an agent skill from jeremylongshore/tons-of-skills-marketplace. Collect Obsidian plugin debug evidence for support and troubleshooting. Use when encountering persistent issues, preparing bug reports, or collecting diagnostic information for plugin problems. Trigger with phrases like "obsidian debug", "obsidian diagnostic", "collect obsidian logs", "obsidian support bundle".

Its SKILL.md is about 2.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including reference files (for example `references/implementation-guide.md`). Compatibility notes: Designed for Claude Code

It sits in Testing & QA, covering QA and bug reports. It works with Obsidian. The repository describes itself as: Model-agnostic agent-skills platform with a harness-free canonical layer, verified adapters, and the ccpi package manager. Explore at tonsofskills.com. The licence is MIT.

When your agent uses it

  • Encountering persistent issues
  • Preparing bug reports
  • Collecting diagnostic information for plugin problems
  • With phrases like obsidian debug

Example prompts

  • “obsidian debug”
  • “obsidian diagnostic”
  • “collect obsidian logs”
  • “/obsidian-debug-bundle”

Requirements

  • Python 3
  • Compatibility (from SKILL.md): Designed for Claude Code
  • Pre-approved tools (allowed-tools): Read, Bash(grep:*), Bash(tar:*), Grep, Write

Workflow steps

8 steps, taken from the step headings in SKILL.md.

  1. Identify the Vault Path
  2. Collect Obsidian Version and App Settings
  3. List Installed Plugins and Their Versions
  4. Collect Theme and Appearance Info
  5. Gather Vault Statistics
  6. Capture Console Errors
  7. Detect CSS Conflicts
  8. Generate the Debug Report

What it can do on your machine

Read from SKILL.md and the folder at commit 80f86df. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Read
    • Bash(grep:*)
    • Bash(tar:*)
    • Grep
    • Write

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • python3
    • node

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • forum.obsidian.md
    • discord.gg
    • docs.obsidian.md

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

  • Compatibility

    Designed for Claude Code

    From compatibility in the SKILL.md frontmatter.

Context cost

Obsidian Debug Bundle loads about 2.2k tokens when it runs, and up to ~3.5k if it reads all its reference files. Until then it costs about 84 tokens; SKILL.md has 380 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~84
When it runs · the whole SKILL.md, loaded when a task matches
~2.2k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~3.5k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from jeremylongshore/tons-of-skills-marketplace at commit 80f86df, republished under its MIT licence (© jeremylongshore). 380 words, ~2,232 tokens.

Download SKILL.mdSave it as .claude/skills/obsidian-debug-bundle/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
obsidian-debug-bundle
description
Collect Obsidian plugin debug evidence for support and troubleshooting. Use when encountering persistent issues, preparing bug reports, or collecting diagnostic information for plugin problems. Trigger with phrases like "obsidian debug", "obsidian diagnostic", "collect obsidian logs", "obsidian support bundle".
allowed-tools
Read, Bash(grep:*), Bash(tar:*), Grep, Write
compatibility
Designed for Claude Code
version
1.13.0
license
MIT
author
Jeremy Longshore <jeremy@intentsolutions.io>
tags
saas, obsidian, debugging

Obsidian Debug Bundle

Current State

!node --version 2>/dev/null || echo 'N/A' !python3 --version 2>/dev/null || echo 'N/A' !uname -a

Overview

Collect comprehensive diagnostics from an Obsidian vault: app version, installed plugins, active theme, vault stats, console errors, and CSS conflicts. Package everything into a markdown debug report.

Prerequisites

  • Access to the Obsidian vault's filesystem (the vault directory)
  • Terminal access to run collection commands
  • Developer Console access in Obsidian (Ctrl+Shift+I / Cmd+Option+I)

Instructions

Step 1: Identify the Vault Path

Obsidian stores vault data in the vault root under .obsidian/. Locate it:

bash
# macOS
VAULT_PATH=~/Documents/MyVault

# Linux
VAULT_PATH=~/Obsidian/MyVault

# Windows (Git Bash)
VAULT_PATH="/c/Users/$USER/Documents/MyVault"

# Verify it's a valid vault
ls "$VAULT_PATH/.obsidian/app.json" && echo "Valid vault" || echo "Not a vault"
Step 2: Collect Obsidian Version and App Settings
bash
# Obsidian version is in the installer log or app settings
cat "$VAULT_PATH/.obsidian/app.json" 2>/dev/null | python3 -m json.tool

# Check installer version (macOS)
mdls -name kMDItemVersion /Applications/Obsidian.app 2>/dev/null

# Check installer version (Linux, snap)
snap info obsidian 2>/dev/null | grep installed
Step 3: List Installed Plugins and Their Versions
bash
# Active community plugins
echo "=== Active Plugins ==="
cat "$VAULT_PATH/.obsidian/community-plugins.json" 2>/dev/null | python3 -m json.tool

# Plugin details (name, version, minAppVersion)
echo "=== Plugin Manifests ==="
for dir in "$VAULT_PATH/.obsidian/plugins"/*/; do
  if [ -f "$dir/manifest.json" ]; then
    echo "--- $(basename "$dir") ---"
    python3 -c "
import json
m = json.load(open('$dir/manifest.json'))
print(f\"  version: {m.get('version', 'unknown')}\")
print(f\"  minAppVersion: {m.get('minAppVersion', 'unknown')}\")
print(f\"  author: {m.get('author', 'unknown')}\")
"
  fi
done
Step 4: Collect Theme and Appearance Info
bash
echo "=== Appearance ==="
cat "$VAULT_PATH/.obsidian/appearance.json" 2>/dev/null | python3 -m json.tool

# Check for custom CSS snippets
echo "=== CSS Snippets ==="
ls "$VAULT_PATH/.obsidian/snippets/" 2>/dev/null || echo "No snippets directory"

# Check active theme
THEME=$(python3 -c "
import json
try:
    a = json.load(open('$VAULT_PATH/.obsidian/appearance.json'))
    print(a.get('cssTheme', 'Default'))
except: print('Default')
")
echo "Active theme: $THEME"
Step 5: Gather Vault Statistics
bash
echo "=== Vault Stats ==="
# File counts by type
echo "Markdown files: $(find "$VAULT_PATH" -name '*.md' -not -path '*/.obsidian/*' -not -path '*/.trash/*' | wc -l)"
echo "Attachments: $(find "$VAULT_PATH" \( -name '*.png' -o -name '*.jpg' -o -name '*.pdf' -o -name '*.mp3' \) -not -path '*/.obsidian/*' | wc -l)"
echo "Total files: $(find "$VAULT_PATH" -type f -not -path '*/.obsidian/*' -not -path '*/.trash/*' | wc -l)"

# Vault size
echo "Vault size: $(du -sh "$VAULT_PATH" 2>/dev/null | cut -f1)"
echo ".obsidian size: $(du -sh "$VAULT_PATH/.obsidian" 2>/dev/null | cut -f1)"
Step 6: Capture Console Errors

Open Obsidian's Developer Console (Ctrl+Shift+I / Cmd+Option+I), then run this in the Console tab to export errors:

javascript
// Paste in Obsidian's Developer Console
(() => {
  const errors = [];
  const originalError = console.error;
  console.error = (...args) => {
    errors.push({ time: new Date().toISOString(), message: args.map(String).join(' ') });
    originalError.apply(console, args);
  };

  // After reproducing the issue, run:
  // copy(JSON.stringify(errors, null, 2))
  // This copies the error log to clipboard

  console.log(`Error capture active. Reproduce your issue, then run:
    copy(JSON.stringify(errors, null, 2))`);
})();

Alternatively, check for existing errors:

javascript
// Quick dump of plugin load errors
app.plugins.manifests; // All registered plugins
app.plugins.enabledPlugins; // Currently enabled set
// Check if a specific plugin failed to load:
app.plugins.plugins['your-plugin']; // undefined = failed to load
Step 7: Detect CSS Conflicts
bash
# Check for snippet overrides that might conflict
for snippet in "$VAULT_PATH/.obsidian/snippets"/*.css; do
  [ -f "$snippet" ] || continue
  echo "=== $(basename "$snippet") ==="
  # Look for broad selectors that commonly cause conflicts
  grep -n 'body\b\|\.app-container\|\.workspace\|\.markdown-preview\|!important' "$snippet" | head -20
done

# Check theme CSS size (large themes are conflict-prone)
THEME_DIR="$VAULT_PATH/.obsidian/themes/$THEME"
if [ -d "$THEME_DIR" ]; then
  echo "Theme CSS size: $(wc -c < "$THEME_DIR/theme.css" 2>/dev/null) bytes"
fi
Step 8: Generate the Debug Report

Combine all diagnostics into a single markdown note:

bash
REPORT="$VAULT_PATH/debug-report-$(date +%Y%m%d-%H%M%S).md"

cat > "$REPORT" <<'HEADER'
# Obsidian Debug Report
HEADER

cat >> "$REPORT" <<EOF
Generated: $(date -u +"%Y-%m-%dT%H:%M:%SZ")
Platform: $(uname -s) $(uname -m)
Node: $(node --version 2>/dev/null || echo 'N/A')

## App Settings
\`\`\`json
$(cat "$VAULT_PATH/.obsidian/app.json" 2>/dev/null || echo '{}')
\`\`\`

## Active Plugins
\`\`\`json
$(cat "$VAULT_PATH/.obsidian/community-plugins.json" 2>/dev/null || echo '[]')
\`\`\`

## Plugin Versions
$(for dir in "$VAULT_PATH/.obsidian/plugins"/*/; do
  [ -f "$dir/manifest.json" ] || continue
  name=$(python3 -c "import json; print(json.load(open('$dir/manifest.json')).get('name','?'))" 2>/dev/null)
  ver=$(python3 -c "import json; print(json.load(open('$dir/manifest.json')).get('version','?'))" 2>/dev/null)
  echo "- $name v$ver"
done)

## Appearance
\`\`\`json
$(cat "$VAULT_PATH/.obsidian/appearance.json" 2>/dev/null || echo '{}')
\`\`\`

## Vault Stats
- Markdown files: $(find "$VAULT_PATH" -name '*.md' -not -path '*/.obsidian/*' -not -path '*/.trash/*' 2>/dev/null | wc -l)
- Total files: $(find "$VAULT_PATH" -type f -not -path '*/.obsidian/*' -not -path '*/.trash/*' 2>/dev/null | wc -l)
- Vault size: $(du -sh "$VAULT_PATH" 2>/dev/null | cut -f1)

## CSS Snippets
$(ls "$VAULT_PATH/.obsidian/snippets/" 2>/dev/null || echo 'None')

## Notes
_Paste console errors below this line after reproducing the issue._

EOF

echo "Debug report written to: $REPORT"

Output

  • debug-report-YYYYMMDD-HHMMSS.md in the vault root containing:
    • Platform and Obsidian version
    • Complete plugin list with versions
    • Active theme and CSS snippet inventory
    • Vault statistics (file count, size)
    • Appearance configuration
    • Empty section for pasting console errors after reproducing the issue

Error Handling

ItemPrivacy RiskAction
app.jsonContains vault pathRedact path before sharing
Plugin data.jsonMay contain API keysNever include automatically
Console logsMay contain file namesReview before sharing
Vault pathPersonal directory infoReplace with <vault> before sharing
CSS snippetsGenerally safeOK to share
community-plugins.jsonPlugin list onlySafe to share
Show full SKILL.md (125 more words)Show less

Examples

Quick bug report: Run Steps 2-5 from terminal, paste output into a GitHub issue. Add console errors from Step 6 if the issue involves runtime failures.

Plugin developer diagnostics: A user reports your plugin crashes. Ask them to run the Step 8 script and share the resulting debug-report-*.md file. Check their Obsidian version against your manifest.json minAppVersion, and look for plugin conflicts in the active plugins list.

CSS debugging: User reports broken styling. Run Step 7 to find !important overrides in snippets. Disable snippets one by one in Settings > Appearance > CSS snippets to isolate the conflict.

Resources

Next Steps

For systematic incident response, see obsidian-incident-runbook. For rate limit issues, see obsidian-rate-limits.

© jeremylongshore, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file (references) in skills/.curated/obsidian-debug-bundle of jeremylongshore/tons-of-skills-marketplace.

  • SKILL.md
  • references/implementation-guide.md

Open the folder on GitHubat commit 80f86df

Compare with similar skills

Obsidian Debug Bundle next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Obsidian Debug Bundle compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Obsidian Debug Bundle this skilljeremylongshore/tons-of-skills-marketplace2.8k—~2.2kAutomated safety check: PassMIT
Reproduce Chat Statesdifferent-ai/openwork24k—~673Automated safety check: PassCustom licence
Dynamo Jira TicketDynamoDS/Dynamo2k—~1.1kAutomated safety check: PassApache-2.0
Plugin Testingpolyipseity/obsidian-terminal950—~828Automated safety check: PassAGPL-3.0
Moav E2EMotherofallVPNs/MoaV448—~1.9kAutomated safety check: NotesMIT
Creating A Coral TaskHuman-Agent-Society/CORAL1.1k—~2.2kAutomated safety check: PassApache-2.0

Similar skills

  • Reproduce Chat States

    different-ai/openwork

    Fires known chat states in the running OpenWork desktop app, such as provider errors, retries and tool steps, so you can check how each renders.

    24k GitHub stars~673 tokensUpdated today
    Testing & QAAuto-check passed
  • Dynamo Jira Ticket

    DynamoDS/Dynamo

    Create structured Jira tickets for Dynamo from bug reports, failing tests, or feature requests.

    2k GitHub stars~1.1k tokensUpdated today
    Testing & QAAuto-check passed
  • Plugin Testing

    polyipseity/obsidian-terminal

    Skill for testing Obsidian plugin features in this repository.

    950 GitHub stars~828 tokensUpdated 5 days ago
    Testing & QAAuto-check passed
  • Moav E2E

    MotherofallVPNs/MoaV

    Run and debug MoaV's end-to-end tests — real protocol connectivity (client-test.sh) and the moav CLI smoke test — against a LIVE server, via the self-hosted e2e workflow or a local test VPS.

    448 GitHub stars~1.9k tokensUpdated 2 days ago
    Testing & QAAuto-check: notes
  • Creating A Coral Task

    Human-Agent-Society/CORAL

    Author a new CORAL task — the three pieces that must line up (task.yaml, seed/, a packaged grader/), the coral init → coral validate → smoke-test loop, and how to pick a grader pattern (stdout…

    1.1k GitHub stars~2.2k tokensUpdated 1 mo ago
    Testing & QAAuto-check passed
  • Launch Rl

    marin-community/marin

    Define, validate, submit, or restart a Marin SkyRL experiment through its artifact main.

    3.9k GitHub stars~894 tokensUpdated today
    Testing & QAAuto-check passed

More from jeremylongshore/tons-of-skills-marketplace

All 3,342 skills in this repo
  • Performing Security Code Review

    jeremylongshore/tons-of-skills-marketplace

    Execute this skill enables AI assistant to conduct a security-focused code review using the security-agent plugin.

    2.8k GitHub starsUsed in 2 repos~1.3k tokens
    Auto-check: notes
  • Adapting Transfer Learning Models

    jeremylongshore/tons-of-skills-marketplace

    Build this skill automates the adaptation of pre-trained machine learning models using transfer learning techniques.

    2.8k GitHub stars~1.1k tokensUpdated today
    Auto-check passed
  • Agent Context Loader

    jeremylongshore/tons-of-skills-marketplace

    Execute proactive auto-loading: automatically detects and loads agents.md files.

    2.8k GitHub stars~1.1k tokensUpdated today
    Auto-check passed
  • Aggregating Performance Metrics

    jeremylongshore/tons-of-skills-marketplace

    Aggregate and centralize performance metrics from applications, systems, databases, caches, and services.

    2.8k GitHub stars~1.2k tokensUpdated today
    Auto-check passed
  • Analyzing Capacity Planning

    jeremylongshore/tons-of-skills-marketplace

    Execute this skill enables AI assistant to analyze capacity requirements and plan for future growth.

    2.8k GitHub stars~947 tokensUpdated today
    Auto-check passed
  • Analyzing Database Indexes

    jeremylongshore/tons-of-skills-marketplace

    Process use when you need to work with database indexing. An agent skill from jeremylongshore/tons-of-skills-marketplace.

    2.8k GitHub stars~2k tokensUpdated today
    Auto-check passed

Works with

Categories

Questions about Obsidian Debug Bundle

What does Obsidian Debug Bundle do?

Collect Obsidian plugin debug evidence for support and troubleshooting. Obsidian Debug Bundle is an agent skill from jeremylongshore/tons-of-skills-marketplace. Collect Obsidian plugin debug evidence for support and troubleshooting.

When should I use Obsidian Debug Bundle?

Obsidian Debug Bundle fits situations like: encountering persistent issues; preparing bug reports; collecting diagnostic information for plugin problems; with phrases like obsidian debug.

How do I install Obsidian Debug Bundle in Claude Code?

Run `npx skills add jeremylongshore/tons-of-skills-marketplace --skill obsidian-debug-bundle -a claude-code`. Or copy the skill folder (skills/.curated/obsidian-debug-bundle in jeremylongshore/tons-of-skills-marketplace) into .claude/skills/obsidian-debug-bundle in your project. Claude Code loads it when a task matches its description.

How do I install Obsidian Debug Bundle in Codex?

Run `npx skills add jeremylongshore/tons-of-skills-marketplace --skill obsidian-debug-bundle -a codex`. Or copy the skill folder (skills/.curated/obsidian-debug-bundle in jeremylongshore/tons-of-skills-marketplace) into .agents/skills/obsidian-debug-bundle in your project. Codex loads it when a task matches its description.

Can I use Obsidian Debug Bundle in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add jeremylongshore/tons-of-skills-marketplace --skill obsidian-debug-bundle -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/obsidian-debug-bundle, .gemini/skills/obsidian-debug-bundle, .github/skills/obsidian-debug-bundle and .opencode/skills/obsidian-debug-bundle in your project.

What does Obsidian Debug Bundle need to run?

Going by SKILL.md and its folder, Obsidian Debug Bundle needs the command-line tools its instructions call (python3 and node). Our summary lists: Python 3. Its frontmatter pre-approves these tools: Read, Bash(grep:*), Bash(tar:*), Grep, Write. Compatibility (from SKILL.md): Designed for Claude Code.

Does Obsidian Debug Bundle access the network?

SKILL.md names 3 domains. As links in the text: forum.obsidian.md, discord.gg and docs.obsidian.md. This is read from the text; nothing was executed.

Is Obsidian Debug Bundle safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Obsidian Debug Bundle use?

Obsidian Debug Bundle is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Obsidian Debug Bundle use?

About 2.2k tokens (SKILL.md is roughly 8.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 1.3k tokens, read only when the agent opens those files.

What are the alternatives to Obsidian Debug Bundle?

Skills that share tags, products or a category with Obsidian Debug Bundle: Reproduce Chat States (different-ai/openwork, 24k stars), Dynamo Jira Ticket (DynamoDS/Dynamo, 2k stars), Plugin Testing (polyipseity/obsidian-terminal, 950 stars) and Moav E2E (MotherofallVPNs/MoaV, 448 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Obsidian Debug Bundle?

jeremylongshore (a GitHub user) maintains it in jeremylongshore/tons-of-skills-marketplace, which has 2,825 GitHub stars. The repository holds 3,342 skills in this directory. The repository was last updated on October 9, 2026.

Source: jeremylongshore/tons-of-skills-marketplace on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.