Swarmvault
swarmclawai/swarmvault
Use SwarmVault when the user needs a local-first knowledge vault that writes durable markdown, graph, search, dashboard, review, chat-session, context-pack, task-ledger, static AI export, retrieval…
Scan competing markdown editors' user feedback (GitHub issues/discussions/releases + closed-source forums) and synthesize themes cross-referenced against SoloMD's own gaps and roadmap.
$ npx skills add zhitongblog/solomd --skill competitor-feedback -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install zhitongblog/solomd competitor-feedback --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/zhitongblog/solomd.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/competitor-feedback .claude/skills/competitor-feedback && 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 "competitor-feedback" agent skill from https://github.com/zhitongblog/solomd/tree/main/.agents/skills/competitor-feedback into .claude/skills/competitor-feedback/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "competitor-feedback", 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/zhitongblog/solomd/tree/main/.agents/skills/competitor-feedbackType 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 zhitongblog/solomd --skill competitor-feedback -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install zhitongblog/solomd competitor-feedback --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/zhitongblog/solomd.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/competitor-feedback .agents/skills/competitor-feedback && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "competitor-feedback" agent skill from https://github.com/zhitongblog/solomd/tree/main/.agents/skills/competitor-feedback into .agents/skills/competitor-feedback/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "competitor-feedback", 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 zhitongblog/solomd --skill competitor-feedback -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install zhitongblog/solomd competitor-feedback --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/zhitongblog/solomd.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/competitor-feedback .cursor/skills/competitor-feedback && 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 "competitor-feedback" agent skill from https://github.com/zhitongblog/solomd/tree/main/.agents/skills/competitor-feedback into .cursor/skills/competitor-feedback/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "competitor-feedback", 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/zhitongblog/solomd.git --path .agents/skills/competitor-feedback--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 zhitongblog/solomd --skill competitor-feedback -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install zhitongblog/solomd competitor-feedback --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/zhitongblog/solomd.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/competitor-feedback .gemini/skills/competitor-feedback && 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 "competitor-feedback" agent skill from https://github.com/zhitongblog/solomd/tree/main/.agents/skills/competitor-feedback into .gemini/skills/competitor-feedback/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "competitor-feedback", 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 zhitongblog/solomd competitor-feedbackInstalls 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 zhitongblog/solomd --skill competitor-feedback -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/zhitongblog/solomd.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/competitor-feedback .github/skills/competitor-feedback && 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 "competitor-feedback" agent skill from https://github.com/zhitongblog/solomd/tree/main/.agents/skills/competitor-feedback into .github/skills/competitor-feedback/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "competitor-feedback", 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 zhitongblog/solomd --skill competitor-feedback -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install zhitongblog/solomd competitor-feedback --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/zhitongblog/solomd.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/competitor-feedback .opencode/skills/competitor-feedback && 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 "competitor-feedback" agent skill from https://github.com/zhitongblog/solomd/tree/main/.agents/skills/competitor-feedback into .opencode/skills/competitor-feedback/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "competitor-feedback", 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.
competitor-feedbackScan competing markdown editors' user feedback (GitHub issues/discussions/releases + closed-source forums) and synthesize themes cross-referenced against SoloMD's own gaps and roadmap.
Competitor Feedback is an agent skill from zhitongblog/solomd. Scan competing markdown editors' user feedback (GitHub issues/discussions/releases + closed-source forums) and synthesize themes cross-referenced against SoloMD's own gaps and roadmap. Surfaces unmet demand SoloMD could win on, and features competitors ship that SoloMD lacks. Supports a "subscribe" mode that reports only what's new since the last scan. Use when asked to "check competitor feedback", "what are users complaining about in Obsidian/Logseq/etc.", "competitor watch", or "subscribe to competitors' GitHub".
Its SKILL.md is about 1.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 4 other files (for example `competitors.json`, `scan.sh` and `unzoo.sh`).
It sits in Knowledge Management, covering Markdown. It works with GitHub, Obsidian, Model Context Protocol and Tauri. The repository describes itself as: A markdown editor — and the bridge to your LLM. Local-first, MIT, ~15 MB. Bundled MCP server lets Claude Code / Codex / Cursor drive your vault directly. 14 AI providers BYOK. The licence is MIT.
5 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 35e8fef. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
BashReadWriteWebSearchWebFetchFrom allowed-tools in the SKILL.md frontmatter.
Ships script files (Shell), which the agent can run.
Shell commands in SKILL.md call:
bashghFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use gh, 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.
Competitor Feedback loads about 1.2k tokens when it runs. Until then it costs about 135 tokens; SKILL.md has 521 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 noted patterns worth knowing about, such as sudo or a known installer.
allowed-tools: Bash, Read, Write, WebSearch, WebFetchAutomated 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 zhitongblog/solomd at commit 35e8fef, republished under its MIT licence (© zhitongblog). 521 words, ~1,223 tokens.
.claude/skills/competitor-feedback/SKILL.md (or your agent's skills folder). This skill also uses 4 other files; get the full folder from GitHub.Pulls real user feedback from SoloMD's competitors and turns it into a product signal: what their users want that we could win on, and what they ship that we lack.
The global AGENTS.md mentions an unzoo browser. The mcp__unzoo__* MCP tools
are not installed — but unzoo IS available as a local REST API at
http://127.0.0.1:9399 (a real headless Chromium: JS rendering, anti-bot,
cookies). Use it via the bundled unzoo.sh wrapper, not MCP calls.
gh CLI, driven by scan.sh — gives
reaction-sorted issue lists (best unmet-demand signal). This is the main channel.unzoo.sh to read their forums/Reddit:
unzoo.sh fetch-web <forum-url> and unzoo.sh search-web "<name> bug …".
unzoo.sh discover-rss <site> can find a feed to poll. WebSearch/WebFetch
are fine fallbacks.gh/the GitHub API is rate-limited or EOFs (CN network),
unzoo.sh search-github "<query>" / unzoo.sh fetch-github <owner> <repo> reach
GitHub through the browser backend and often succeed when gh doesn't.unzoo.sh health → {"status":"ok"}. Endpoints accept
url / query / owner+repo; responses are {success, data} JSON.Pick mode.
bash .Codex/skills/competitor-feedback/scan.shbash .Codex/skills/competitor-feedback/scan.sh newscan.sh full Logseq SiYuanLIMIT=12 scan.sh.The competitor registry is competitors.json (edit to add/remove). GitHub-hosted
ones are fetched directly; the script prints the GitHub digest and then lists the
closed-source competitors for you to handle in step 2. It also writes .last-scan
so the next new run is truly incremental — that's the "subscribe" behaviour.
Web channel for closed-source competitors (via unzoo — the real browser).
unzoo.sh health first. Then for each closed-source competitor scan.sh listed:
unzoo.sh fetch-web <forum/reddit url from competitors.json> and
unzoo.sh search-web "<name> bug OR missing feature OR complaint <year>".
(WebSearch/WebFetch are fallbacks if unzoo is down.) Extract recurring
themes — don't dump raw posts.
Synthesize — this is the point, not the raw list. Group everything into recurring themes (e.g. "sync conflicts", "mobile parity", "large-vault perf", "plugin breakage"). For each theme note which competitors it hits and rough volume (top-voted issue = strong signal).
Cross-reference against SoloMD. Read docs/roadmap.md and recent SoloMD
issues (gh issue list --repo zhitongblog/solomd --state open). Then output two
ranked lists:
Write the report to docs/competitor-feedback/YYYY-MM-DD.md (create the dir).
Structure: TL;DR (3-5 bullets) → themes table → Win-on → Gaps → raw per-competitor
appendix (the scan.sh output + web findings, for traceability). Keep the synthesis
tight and opinionated; the founder reads the TL;DR first.
scan.sh already retries; if a competitor
shows "(fetch failed)", just re-run it for that one (scan.sh full <name>).scan.sh new weekly; it stays incremental via .last-scan.© zhitongblog, MIT. 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 in .agents/skills/competitor-feedback of zhitongblog/solomd.
Open the folder on GitHubat commit 35e8fef
Competitor Feedback 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 |
|---|---|---|---|---|---|---|
| Competitor Feedback this skillzhitongblog/solomd | 1.2k | — | ~1.2k | Automated safety check: Notes | MIT | |
| Swarmvaultswarmclawai/swarmvault | 710 | — | ~6.1k | Automated safety check: Pass | MIT | |
| Confluence To Markdowniurykrieger/claude-bedrock | 105 | 1 repos | ~2.8k | Automated safety check: Notes | MIT | |
| Lov Any2pdflovstudio/any2pdf | 211 | — | ~2.4k | Automated safety check: Notes | MIT | |
| Triageflowershow/flowershow | 1.1k | — | ~1.9k | Automated safety check: Pass | AGPL-3.0 | |
| PullmdAeternaLabsHQ/pullmd | 486 | — | ~2.6k | Automated safety check: Pass | AGPL-3.0 |
swarmclawai/swarmvault
Use SwarmVault when the user needs a local-first knowledge vault that writes durable markdown, graph, search, dashboard, review, chat-session, context-pack, task-ledger, static AI export, retrieval…
iurykrieger/claude-bedrock
Internal fetcher module for Confluence pages. An agent skill from iurykrieger/claude-bedrock.
lovstudio/any2pdf
Convert Markdown documents to professionally typeset PDF files with reportlab.
flowershow/flowershow
Automatically triage a newly opened GitHub issue — categorise it, verify the claim, and apply the right category and state so a maintainer or agent can pick it up.
AeternaLabsHQ/pullmd
Read any web page, document, or YouTube video as clean Markdown using PullMD.
Stack-Cairn/LiveAgent
Review an open GitHub pull request or the current local branch and working tree with parallel, independent reviewers and evidence-based validation.
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.
zhitongblog/solomd
Read, search, edit, and version-control any folder of Markdown notes via the SoloMD MCP server.
Categories
Scan competing markdown editors' user feedback (GitHub issues/discussions/releases + closed-source forums) and synthesize themes cross-referenced against SoloMD's own gaps and roadmap. Competitor Feedback is an agent skill from zhitongblog/solomd. Scan competing markdown editors' user feedback (GitHub issues/discussions/releases + closed-source forums) and synthesize themes cross-referenced against SoloMD's own gaps and roadmap.
Competitor Feedback fits situations like: asked to check competitor feedback; what are users complaining about in Obsidian/Logseq/etc; competitor watch; subscribe to competitors GitHub.
Run `npx skills add zhitongblog/solomd --skill competitor-feedback -a claude-code`. Or copy the skill folder (.agents/skills/competitor-feedback in zhitongblog/solomd) into .claude/skills/competitor-feedback in your project. Claude Code loads it when a task matches its description.
Run `npx skills add zhitongblog/solomd --skill competitor-feedback -a codex`. Or copy the skill folder (.agents/skills/competitor-feedback in zhitongblog/solomd) into .agents/skills/competitor-feedback 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 zhitongblog/solomd --skill competitor-feedback -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/competitor-feedback, .gemini/skills/competitor-feedback, .github/skills/competitor-feedback and .opencode/skills/competitor-feedback in your project.
Going by SKILL.md and its folder, Competitor Feedback needs a shell for the scripts in its folder and the command-line tools its instructions call (bash and gh). Our summary lists: A Bash shell. Its frontmatter pre-approves these tools: Bash, Read, Write, WebSearch, WebFetch.
SKILL.md contains no URLs. Its commands use gh, 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 notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.
Competitor Feedback is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.2k tokens (SKILL.md is roughly 4.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Competitor Feedback: Swarmvault (swarmclawai/swarmvault, 710 stars), Confluence To Markdown (iurykrieger/claude-bedrock, 105 stars), Lov Any2pdf (lovstudio/any2pdf, 211 stars) and Triage (flowershow/flowershow, 1.1k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
zhitongblog (a GitHub user) maintains it in zhitongblog/solomd, which has 1,198 GitHub stars. The repository holds 3 skills in this directory. The repository was last updated on October 10, 2026.
Source: zhitongblog/solomd on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.