Obsidian Community Check
SkillDocs & knowledgeTrigger and inspect the Obsidian Community plugin review-branch scan for the personal-assistant plugin. Use when asked to run, trigger, poll, verify, or report the community.obsidian.md automated check for master, a branch, tag, or commit before Obsidian plugin release or publication.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the Obsidian Community Check skill
What this skill tells your AI
The instructions your AI receives, as published by edonyzpc/personal-assistant in .agents/skills/obsidian-community-check/SKILL.md and read by ahel’s review.
Core Rules
- Use the real Obsidian Community account page with the user's existing authenticated browser session. Do not invent a public API or CLI for the hosted scan.
- Treat this hosted submission as distinct from the repo-local source scan in the
AGENTS.mdLocal Validation Gate. Neither replaces the other. - Submit only a ref whose intended local commit is proven reachable and identical on the remote. Stop on every SHA mismatch.
- If the user explicitly asked to trigger the hosted check, that authorizes this specific submission. Still obey any browser action-time confirmation.
The project review form is:
https://community.obsidian.md/account/plugins/personal-assistant/review-branch
Preflight
Run from the personal-assistant repo root.
- Confirm repository state and choose the requested ref. Default to
masteronly when the user supplied no branch, tag, or commit:
git status --short --branch
git rev-parse --show-toplevel
TARGET_REF=master
INTENDED_SHA="$(git rev-parse --verify "${TARGET_REF}^{commit}")"
printf 'target=%s\nintended=%s\n' "$TARGET_REF" "$INTENDED_SHA"
Stop if the ref cannot resolve locally. Report uncommitted changes because they are not part of any hosted scan.
- Resolve the remote-scannable SHA by ref type.
For a local branch:
REMOTE_SCAN_SHA="$(git ls-remote --exit-code --heads origin "$TARGET_REF" | awk 'NR==1 {print $1}')"
For a tag, prefer the peeled target of an annotated tag and fall back to the lightweight tag target:
REMOTE_SCAN_SHA="$(git ls-remote --tags origin "refs/tags/$TARGET_REF^{}" | awk 'NR==1 {print $1}')"
if [ -z "$REMOTE_SCAN_SHA" ]; then
REMOTE_SCAN_SHA="$(git ls-remote --exit-code --tags origin "refs/tags/$TARGET_REF" | awk 'NR==1 {print $1}')"
fi
For a raw commit SHA, refresh remote-tracking reachability and require at least one fetched remote branch to contain it:
git fetch --prune --tags origin
REMOTE_CONTAINERS="$(git branch -r --contains "$INTENDED_SHA" | sed 's/^[*[:space:]]*//')"
if [ -z "$REMOTE_CONTAINERS" ]; then
printf 'STOP commit is not reachable from a fetched remote branch: %s\n' "$INTENDED_SHA"
exit 1
fi
printf '%s\n' "$REMOTE_CONTAINERS"
REMOTE_SCAN_SHA="$INTENDED_SHA"
If network or sandbox policy blocks ls-remote/fetch, request the needed approval or report BLOCKED; do not submit from stale assumptions. For a raw SHA, stop unless the refreshed remote-branch output proves reachability. A local-only tag is not proof.
- Require exact equality before opening the form:
if [ -z "$REMOTE_SCAN_SHA" ] || [ "$INTENDED_SHA" != "$REMOTE_SCAN_SHA" ]; then
printf 'STOP intended=%s remote=%s\n' "$INTENDED_SHA" "${REMOTE_SCAN_SHA:-missing}"
exit 1
fi
printf 'SCAN_READY ref=%s sha=%s\n' "$TARGET_REF" "$INTENDED_SHA"
Never push automatically. If a branch/tag is absent, ahead, divergent, or otherwise mismatched, stop and tell the user exactly what must be pushed or corrected.
- Avoid duplicates. Before submitting, inspect the Reviews list for an existing
Pendingentry with the same ref and exact commit. Reuse it unless the user explicitly asks to resubmit.
Browser Workflow
Discover the browser tools available in this session and use one that can access
the user's existing community.obsidian.md login, respecting any browser the user
specified. Do not require or install a legacy skill by name. Tool availability
does not replace the visible page and commit evidence below.
- Open the review form.
- Verify the logged-in page shows:
- Heading
Preview a branch scan. - Textbox
Branch, tag, or commit SHA. - Button
Run preview scan.
- Heading
- Fill the verified
TARGET_REFexactly. - Click
Run preview scanonly afterSCAN_READYevidence exists. - Confirm navigation to:
https://community.obsidian.md/account/plugins/personal-assistant
- Find the newest matching Preview row and verify all three fields:
Ref: <TARGET_REF>.Commit: <INTENDED_SHA prefix>.- Status
Pending,Completed, orFailed.
Treat any page commit that is not an exact prefix of INTENDED_SHA as FAIL: wrong commit scanned. Stop and do not claim completion.
If no available browser tool can access the authenticated page, or the page is
logged out, blocked by browser security, or shows CAPTCHA/account prompts, stop
and report BLOCKED. Do not inspect cookies, passwords, profiles, local storage,
or session files. Keep the existing tab open for handoff when useful.
Short-Batch Polling
- Reload and inspect in batches of at most six iterations or about 30 seconds.
- After each batch, re-read the current tab state and yield a progress update. Do not run one blocking 90-second loop.
- Stop immediately when the exact matching row changes to
CompletedorFailed. - Stop after about 90 seconds total unless the user requested a longer wait. If still
Pending, keep the tab open and report incomplete status. - If browser security blocks later polling, preserve the already-verified submitted row and report the final state as unknown; do not reopen a long loop from scratch.
- Report partial categories visible during
Pendingas incomplete.
Result Rules
- Treat visible
Errorfindings as release blockers perAGENTS.md. - Report warnings concretely without calling the scan failed unless the page says
Failedor shows anError. - Do not claim PASS until the exact commit-matched row is
Completedand all visible findings were reviewed. - Do not use hosted completion as evidence that the local source scan ran.
Output
Community check:
- Ref: `<branch/tag/sha>`
- Intended local SHA: `<full sha>`
- Remote-scannable SHA: `<full sha>`
- Page commit: `<visible sha>`
- SHA match: yes / no
- Status: Pending / Completed / Failed / BLOCKED
- Findings:
- PASS: `<category>` - Pass
- FAIL: `<category>` - Error (release blocker)
- WARNING: `<category>` - Warning
- Complete: yes / no
- Local source scan: `<separate result or not run>`
- Browser tab: kept open / closed
Related Skills
- Use
obsidian-test-vault-smokefor local validation and app smoke. - Use
obsidian-ios-real-device-smokefor mobile validation. - Use
personal-assistant-reviewfor code-level review gates.
Signals
- GitHub stars
- 149
- Forks
- 8
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
obsidian-community-check- Source
- github.com/edonyzpc/personal-assistant