Hig Project Context
raintree-technology/hig-doctor
Create or update a shared Apple design context document that other HIG skills use to tailor guidance.
Validate Personal Assistant runtime and UI changes in the repo-local Obsidian test vault.
$ npx skills add edonyzpc/personal-assistant --skill obsidian-test-vault-smoke -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install edonyzpc/personal-assistant obsidian-test-vault-smoke --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/edonyzpc/personal-assistant.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/obsidian-test-vault-smoke .claude/skills/obsidian-test-vault-smoke && rm -rf skills-srcUse ~/.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/
Install the "obsidian-test-vault-smoke" agent skill from https://github.com/edonyzpc/personal-assistant/tree/master/.agents/skills/obsidian-test-vault-smoke into .claude/skills/obsidian-test-vault-smoke/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "obsidian-test-vault-smoke", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/edonyzpc/personal-assistant/tree/master/.agents/skills/obsidian-test-vault-smokeType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add edonyzpc/personal-assistant --skill obsidian-test-vault-smoke -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install edonyzpc/personal-assistant obsidian-test-vault-smoke --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/edonyzpc/personal-assistant.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/obsidian-test-vault-smoke .agents/skills/obsidian-test-vault-smoke && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "obsidian-test-vault-smoke" agent skill from https://github.com/edonyzpc/personal-assistant/tree/master/.agents/skills/obsidian-test-vault-smoke into .agents/skills/obsidian-test-vault-smoke/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "obsidian-test-vault-smoke", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add edonyzpc/personal-assistant --skill obsidian-test-vault-smoke -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install edonyzpc/personal-assistant obsidian-test-vault-smoke --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/edonyzpc/personal-assistant.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/obsidian-test-vault-smoke .cursor/skills/obsidian-test-vault-smoke && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "obsidian-test-vault-smoke" agent skill from https://github.com/edonyzpc/personal-assistant/tree/master/.agents/skills/obsidian-test-vault-smoke into .cursor/skills/obsidian-test-vault-smoke/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "obsidian-test-vault-smoke", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/edonyzpc/personal-assistant.git --path .agents/skills/obsidian-test-vault-smoke--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add edonyzpc/personal-assistant --skill obsidian-test-vault-smoke -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install edonyzpc/personal-assistant obsidian-test-vault-smoke --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/edonyzpc/personal-assistant.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/obsidian-test-vault-smoke .gemini/skills/obsidian-test-vault-smoke && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "obsidian-test-vault-smoke" agent skill from https://github.com/edonyzpc/personal-assistant/tree/master/.agents/skills/obsidian-test-vault-smoke into .gemini/skills/obsidian-test-vault-smoke/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "obsidian-test-vault-smoke", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install edonyzpc/personal-assistant obsidian-test-vault-smokeInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add edonyzpc/personal-assistant --skill obsidian-test-vault-smoke -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/edonyzpc/personal-assistant.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/obsidian-test-vault-smoke .github/skills/obsidian-test-vault-smoke && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "obsidian-test-vault-smoke" agent skill from https://github.com/edonyzpc/personal-assistant/tree/master/.agents/skills/obsidian-test-vault-smoke into .github/skills/obsidian-test-vault-smoke/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "obsidian-test-vault-smoke", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add edonyzpc/personal-assistant --skill obsidian-test-vault-smoke -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install edonyzpc/personal-assistant obsidian-test-vault-smoke --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/edonyzpc/personal-assistant.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/obsidian-test-vault-smoke .opencode/skills/obsidian-test-vault-smoke && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "obsidian-test-vault-smoke" agent skill from https://github.com/edonyzpc/personal-assistant/tree/master/.agents/skills/obsidian-test-vault-smoke into .opencode/skills/obsidian-test-vault-smoke/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "obsidian-test-vault-smoke", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
obsidian-test-vault-smokeValidate Personal Assistant runtime and UI changes in the repo-local Obsidian test vault.
Obsidian Test Vault Smoke is an agent skill from edonyzpc/personal-assistant. Validate Personal Assistant runtime and UI changes in the repo-local Obsidian test vault. Use for app smoke, desktop interaction, and general mobile validation with Obsidian CLI mobile simulator. Real-device iPhone validation uses obsidian-ios-real-device-smoke only for an explicit user request or a verified iOS-specific capability.
Its SKILL.md is about 2.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 6 other files, including reference files (for example `agents/openai.yaml`, `references/cli-runtime.md` and `references/pagelet-smoke.md`).
It sits in Mobile. It works with Obsidian and iOS. The repository describes itself as: A plugin that harnesses AI agents and streamlining techniques to help you automatically manage Obsidian. The licence is AGPL-3.0.
5 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 5c22410. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
makegitFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Obsidian Test Vault Smoke loads about 2.2k tokens when it runs, and up to ~6.5k if it reads all its reference files. Until then it costs about 90 tokens; SKILL.md has 955 words of instructions outside code blocks.
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.
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.
The full file from edonyzpc/personal-assistant at commit 5c22410, republished under its AGPL-3.0 licence (© edonyzpc). 955 words, ~2,240 tokens.
.claude/skills/obsidian-test-vault-smoke/SKILL.md (or your agent's skills folder). This skill also uses 4 other files; get the full folder from GitHub.test/ and observing the affected behavior in the running app.obsidian vault=test <command> for every Obsidian CLI call. vault=test must precede the command.AGENTS.md before choosing a smoke
skill. Use this skill for general mobile validation with CLI mobile simulator;
a tool failure does not create a real-device requirement.Before an expensive gate or app interaction:
code-only, runtime, visual/layout,
interaction/state, or release/broad.SKIP; do not run full Pagelet, provider, or cross-surface flows for a
geometry-only change.AGENTS.md Validation Planning And Reuse,
verifying relevant source/tests/fixtures/config and build inputs/results.
Reuse observed app smoke when its runtime/assets, target vault state, loaded
build, and acceptance conditions are verifiably unchanged. A new turn alone
does not invalidate it. Changed or unknown relevant state requires only the
affected proof; docs/evidence-only edits do not invalidate runtime smoke
unless they change its acceptance conditions.make deploy. If they change afterward, rerun
only the affected validation gate and app proof.Stop when every frozen acceptance check has current deployed evidence. Do not add adjacent gestures, orientations, provider calls, or unrelated surfaces solely to strengthen an already sufficient proof.
Satisfy the complete Local Validation Gate from repo-root AGENTS.md
before app smoke. Reuse checks covered by the selected enclosing gate with
verified inputs/results: the production build covers type-checking and full
Jest covers the focused suites it includes. Supplement remaining checks,
including the runtime <style> / innerHTML / outerHTML source scan.
For failures, follow AGENTS.md Test Failure Diagnosis; an unavailable
app/device remains a validation gap, never a PASS.
Treat the source-scan rg exit code 1 with no output as PASS. Inspect every match manually. make deploy and the hosted community scan do not replace this local source scan.
| Tier | Use when | Required checks |
|---|---|---|
quick | Narrow code-only or test-only change | Complete Local Validation Gate with focused suites; stop before app smoke only when no runtime/user path changed |
app-runtime | Runtime, command, packaging, Pagelet shell, Chat/Preview/Stats mount, Memory readiness | Local Validation Gate, make deploy, plugin reload, affected CLI/DOM probes, fresh console/error capture |
full-ui | Visible UI, CSS/layout/copy, Pagelet workflow, settings, keyboard/focus, mobile emulation | app-runtime plus real Obsidian interaction, screenshots, UX notes, and provider/write-path checks when applicable |
release-gate | Release, broad refactor, shared infrastructure | Local Validation Gate, make deploy, broad runtime matrix, required UI surfaces, and release evidence reconciliation |
make deploy already runs lint, a production build, full Jest, and asset
deployment. If those checks already passed for the current changes, use
make deploy-current to verify and copy the current build without repeating
them. Reuse conditions and test groups live in AGENTS.md Local Deployment;
build identity alone does not prove tests passed.
git status --short, relevant diffs, and affected surfaces.AGENTS.md.make deploy below, or replace only that command
with make deploy-current when the reuse conditions above hold, then reload:make deploy
obsidian vault=test vault info=path
obsidian vault=test plugin:reload id=personal-assistant
obsidian vault=test plugin id=personal-assistantapp-runtime, full-ui, or release-gate run, read CLI runtime smoke.PASS, FAIL, BLOCKED, or SKIP outcomes.off is correct only when that was the initial state.
Restore mobile first if it triggers a reload, then restore and verify debug.
Report an unknown initial state or failed restoration without claiming
cleanup PASS.BLOCKED and residual risk.release-gate, invoke obsidian-community-check only when the user explicitly requested the hosted scan or the active stable-release workflow explicitly authorized it. Otherwise report it as not run.Validation:
- Runtime delta: `<code-only/runtime/visual-layout/interaction-state/release-broad>`
- Frozen target: `<observable acceptance checks>`
- Reused evidence: `<same-state evidence or none>`
- PASS: `<check>` - `<observed result>`
- FAIL: `<path>` - `<regression or product gap>`
- BLOCKED: `<path>` - `<external blocker and residual risk>`
- SKIP: `<path>` - `<why it was outside this tier>`
- Stop point: `<why the selected tier is complete>`
CLI runtime smoke:
- Vault: `test/`
- Tier: `<quick/app-runtime/full-ui/release-gate>`
- Deployment/reload: `<result>`
- Obsidian: `<version>`
- Target: `<note/view/command>`
- Provider/model/prompt: `<if used>`
- Artifact: `<DOM output, console excerpt, runtime file>`
UI/UX smoke:
- Visible path: `<entry and interaction>`
- Observed UX: `<layout, copy, feedback, accessibility>`
- Screenshot: `<path if captured>`
- UX findings: `<UX-P0/UX-P1/UX-P2 or none>`
Cleanup:
- Initial debug/mobile states: `<observed states or unknown>`
- Restored debug/mobile states: `<observed states; PASS/FAIL/BLOCKED>`
Hosted community scan:
- Authorized and run / not authorized and not run / BLOCKEDpersonal-assistant-review for code-level review.obsidian-ios-real-device-smoke after local app smoke for real-device iOS validation.obsidian-community-check only for an authorized hosted community scan.© edonyzpc, AGPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 4 other files (references) in .agents/skills/obsidian-test-vault-smoke of edonyzpc/personal-assistant.
Open the folder on GitHubat commit 5c22410
Obsidian Test Vault Smoke 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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Obsidian Test Vault Smoke this skilledonyzpc/personal-assistant | 147 | — | ~2.2k | Automated safety check: Pass | AGPL-3.0 | |
| Hig Project Contextraintree-technology/hig-doctor | 144 | 5 repos | ~1.2k | Automated safety check: Pass | MIT | |
| Store Submitzhitongblog/solomd | 1.2k | — | ~1.7k | Automated safety check: Notes | MIT | |
| Hig Components Contentraintree-technology/hig-doctor | 144 | 5 repos | ~1.3k | Automated safety check: Pass | MIT | |
| Discover iOS KeysPoomSmart/MGKeys | 238 | — | ~1.4k | Automated safety check: Pass | MIT | |
| Argent Metro Debuggerbbplayer-app/BBPlayer | 1.2k | — | ~3.4k | Automated safety check: Pass | MIT |
raintree-technology/hig-doctor
Create or update a shared Apple design context document that other HIG skills use to tailor guidance.
zhitongblog/solomd
Publish a SoloMD release to the stores that have no usable submission API — Google Play Console and Microsoft Partner Center — by driving them through the local Unzoo Browser REST API.
raintree-technology/hig-doctor
Apple Human Interface Guidelines for content display components.
PoomSmart/MGKeys
Discover and map new MobileGestalt keys for a new iOS version in MGKeys.
bbplayer-app/BBPlayer
Debug a JS runtime via CDP using argent debugger tools. An agent skill from bbplayer-app/BBPlayer.
zhitongblog/solomd
Read, search, edit, and version-control any folder of Markdown notes via the SoloMD MCP server.
edonyzpc/personal-assistant
Dataview plugin query syntax, inline expressions, DataviewJS API, and common vault analysis patterns.
edonyzpc/personal-assistant
Trigger and inspect Obsidian Community checks for personal-assistant.
edonyzpc/personal-assistant
Manage Personal Assistant BRAT beta prerelease workflow. An agent skill from edonyzpc/personal-assistant.
edonyzpc/personal-assistant
Maintain PA task records and documentation lifecycle. An agent skill from edonyzpc/personal-assistant.
edonyzpc/personal-assistant
Review uncommitted or PR diffs in the personal-assistant Obsidian plugin with project-specific risk lanes, second-layer future-risk checks, severity discipline, subagent review routing, and…
edonyzpc/personal-assistant
Triage, confirm, fix, and validate code review findings in the personal-assistant repository after an agent team or human review.
Categories
Validate Personal Assistant runtime and UI changes in the repo-local Obsidian test vault. Obsidian Test Vault Smoke is an agent skill from edonyzpc/personal-assistant. Validate Personal Assistant runtime and UI changes in the repo-local Obsidian test vault.
Obsidian Test Vault Smoke fits situations like: desktop interaction; general mobile validation with Obsidian CLI mobile simulator.
Run `npx skills add edonyzpc/personal-assistant --skill obsidian-test-vault-smoke -a claude-code`. Or copy the skill folder (.agents/skills/obsidian-test-vault-smoke in edonyzpc/personal-assistant) into .claude/skills/obsidian-test-vault-smoke in your project. Claude Code loads it when a task matches its description.
Run `npx skills add edonyzpc/personal-assistant --skill obsidian-test-vault-smoke -a codex`. Or copy the skill folder (.agents/skills/obsidian-test-vault-smoke in edonyzpc/personal-assistant) into .agents/skills/obsidian-test-vault-smoke in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add edonyzpc/personal-assistant --skill obsidian-test-vault-smoke -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-test-vault-smoke, .gemini/skills/obsidian-test-vault-smoke, .github/skills/obsidian-test-vault-smoke and .opencode/skills/obsidian-test-vault-smoke in your project.
Going by SKILL.md and its folder, Obsidian Test Vault Smoke needs the command-line tools its instructions call (make and git).
SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
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.
Obsidian Test Vault Smoke is published under the AGPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.2k tokens (SKILL.md is roughly 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 4.2k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Obsidian Test Vault Smoke: Hig Project Context (raintree-technology/hig-doctor, 144 stars), Store Submit (zhitongblog/solomd, 1.2k stars), Hig Components Content (raintree-technology/hig-doctor, 144 stars) and Discover iOS Keys (PoomSmart/MGKeys, 238 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
edonyzpc (a GitHub user) maintains it in edonyzpc/personal-assistant, which has 147 GitHub stars. The repository holds 19 skills in this directory. The repository was last updated on October 10, 2026.
Source: edonyzpc/personal-assistant on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.