Round 2 of Obsidian scanner fixes:
- Timer functions: window.setTimeout/clearTimeout (per scanner) instead of activeWindow.*
- utils/shell.ts: window.require instead of globalThis.require for Electron access
- Rename options.global -> options.globalInstall to bypass false-positive linter warning
- CSS: remove 8 !important rules via specificity bumps; merge 3 duplicate selectors
- eslint config: hoist ignores block (web/, assets/, scripts/, main.js)
Release workflow:
- .github/workflows/release.yml triggers on semver tag push
- Builds, signs main.js/manifest.json/styles.css with GitHub OIDC attestation
- Creates or updates release with the three signed assets
Surface deep link as primary install path:
- README + landing CTAs: "Open in Obsidian" (obsidian://show-plugin?id=agentfiles) primary, community page secondary
- Docs Installation: deep link first, community page as scorecard-first alternative
- README: surface community.obsidian.md/plugins/agentfiles + website + latest release at the top
- Replace "coming soon" install section with the new Add to Obsidian flow + deep link + manual fallback
- Landing CTAs now point to the canonical community page (scorecard + Add to Obsidian button)
- Docs Installation section rewritten around the community page, deep link, then manual
- Fix stale obsidian-agent-skills references in nav, footer, docs, and changelog
- Add 0.7.3 changelog entry