Row-Bot is a local-first desktop AI assistant that combines language models with memory and tools for working across files, repositories, workflows, and communication channels. It is intended for people who want an assistant that can run locally while keeping application data on their machine.
Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/siddsachar/row-bot/updater_guidenpx skills add siddsachar/row-bot --skill updater_guidegit clone --depth 1 https://github.com/siddsachar/row-botWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/siddsachar/row-bot/updater_guide)<a href="https://agentmods.dev/skills/siddsachar/row-bot/updater_guide"><img src="https://agentmods.dev/badge/skills/siddsachar/row-bot/updater_guide.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00017 | $0.00559 |
| Opus 5 | $0.00009 | $0.00280 |
| Sonnet 5 | $0.00003 | $0.00112 |
| Haiku 4.5 | $0.00002 | $0.00056 |
Grade A, and why
updater_guide scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 6d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
What it actually says
ROW-BOT AUTO-UPDATE:
- Row-Bot checks GitHub Releases automatically in the background. There is no opt-in toggle: when Internet is available, the assistant polls the configured Row-Bot release repository for new releases and silently ignores network failures.
- Updates are NEVER installed automatically. The user must always approve installation.
WHEN TO MENTION UPDATES:
- The injected dynamic state will include an "Update available: v…" line when one exists. If the user asks "what's new" / "is there an update", surface the version + a one-line summary.
- Do NOT nag — mention proactively at most once per conversation.
- If an update is in
skipped_versions, do not re-offer it unless the user explicitly asks.
CHECKING (row_bot_check_for_updates):
- Read-only. Polls GitHub once and returns the available version (if any), channel, summary, and release page URL.
- Honors the user's channel: 'stable' (default) or 'beta'.
- Failures (offline, rate-limited) are reported but not treated as errors.
INSTALLING (row_bot_install_update):
- Always asks the user for confirmation via an interrupt.
- On approval: downloads the asset to ~/.row-bot/updates/, verifies SHA256, verifies the OS code signature (signtool/codesign), then hands off to the OS installer and exits Row-Bot.
- Windows: launches
Row-Bot-x.y.z-Windows-x64.exe /SILENT /CLOSEAPPLICATIONS /RESTARTAPPLICATIONS. The new version starts automatically after install. - macOS: opens the DMG in Finder; the user drags Row-Bot.app into /Applications.
- Refuses to install when running from a development checkout
(presence of
.git/next to the app).
CHANNEL & SKIPPING:
- The channel is set in Settings → Preferences → Updates and persisted in ~/.row-bot/update_config.json. Do not change it without asking.
- Users can skip a specific version from the "What's New" dialog. Skipped versions are surfaced via row_bot_status category='updates'.
ERROR HANDLING:
- SHA256 mismatch or signature failure: do NOT retry blindly — surface the message verbatim and suggest the user open the GitHub release page.
- Network failure: a one-line "couldn't reach GitHub" suffices.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 6d ago First seen · 54 lines · 17 tokens per session scan A cbed6d914ebd
updater_guide is a skill published in the GitHub repository siddsachar/row-bot (1,487 stars, last pushed 8d ago), licensed Apache-2.0. It adds 17 tokens to every session and 559 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
sup-finishing-a-development-branch
Use when implementation is complete, all tests pass, and you need to decide how to integrate the work - guides completion of development work by presenting structured options for merge, PR, or cleanup.
documentation
Feature documentation and release notes patterns. Use when documenting changes, writing PR descriptions, or preparing releases.
deepchat-release
Prepare and publish DeepChat releases in this repository. Use when Codex needs to bump the app version, update CHANGELOG.md, keep release notes bilingual from v1.0.1 onward with English bullets first and Chinese bullets second, run release checks, create or update versioned release branches such as release/v1.0.1…
ship
Commit and push the current work properly — lint, run the release gate, write a detailed commit message, push to GitHub. Use whenever work reaches a milestone or the user says ship it, commit, or push.
release
Cut a new release: create the release branch (staging bake), then dispatch the production Release run on that branch.
rich-post
Send a Telegram rich-media post to ANOTHER allowlisted chat via the bot (Bot API 10.1 sendRichMessage) - text, inline images, tables, headings, lists, quotes, collapsible blocks, formulas, collages/slideshows ALL in one message bubble. Use when the owner asks to post somewhere other than the current conversation (the…