Skip to content

50 more extensions: 100 first-party extensions in total - #17

Merged
stevenpersia merged 10 commits into
mainfrom
feat/50-more-extensions
Oct 28, 2026
Merged

stevenpersia merged 10 commits into
mainfrom
feat/50-more-extensions

Conversation

@stevenpersia

Copy link
Copy Markdown
Contributor

Adds 50 extensions. With the 48 already here and npm/System bundled in the launcher, that makes 100. They follow the redesigned API and the lessons of the first wave: concealed copies for secrets, background systemd-run jobs when the launcher must be hidden, /proc read through a program, live lists after changes.

Linux & system

  • Window Manager
  • Keyboard Layouts
  • Flatpak Apps
  • Disk Usage
  • Trash
  • Downloads
  • Fonts
  • Startup Apps
  • System Logs
  • Printers
  • Privacy (camera/mic/screen/location in use)
  • Default Apps

Developers

  • Git Repos
  • Codeberg
  • Package Registries (crates.io, PyPI, Go, RubyGems, Packagist, Maven, Hex, pub.dev, NuGet)
  • HTTP Client
  • Regex Tester
  • Cron Helper
  • Dev Reference
  • Databases
  • AWS
  • Google Cloud
  • Cloudflare
  • Ollama Models
  • Nerd Font Icons

Productivity

  • Slack
  • Trello
  • Asana
  • ClickUp
  • TickTick
  • Raindrop.io
  • Todo.txt
  • Logseq
  • Joplin
  • Zotero
  • Anki
  • Countdowns

Info & fun

  • Crypto
  • Stocks
  • Movies & TV
  • Books
  • Internet Radio
  • YouTube
  • Reddit
  • Wikipedia
  • Network Tools
  • QR Codes (pure TypeScript encoder, checked bit for bit against python-qrcode and decoded with zxing)
  • Random
  • Text to Speech
  • MPD Music

Also:

  • registry entries for all 50 (scripts/validate.ts passes);
  • the README table regenerated from the manifests;
  • a GitHub test fixed: it used a fixed date and failed the day after it was written.

Requires backslash-app/backslash#64 on main first. It adds the icons printer, database, bookmark, hourglass, coin, chartUp, chartDown, film, radio, qr, dice, font, mouse and kanban.

Broad permissions, each justified in its manifest

  • HTTP Client: net = ["*"]. It calls whatever URL you type.
  • Wikipedia: *.wikipedia.org for languages outside the listed ones (without pictures for those).
  • Disk Usage, Trash, Downloads, Logseq: read ~. They scan folder sizes, check original paths, and find the download folder under its localized name. None has network access except Logseq, which only talks to logseq://.
  • Git Repos: runs find over the folders you configure.

Testing

  • deno fmt --check, deno lint, deno check and deno test with the CI permissions pass across the repo: 744 tests.
  • Every command was run through backslash run. Where the tool or service wasn't available, against fake CLIs or local mock APIs, including write actions and forms (driven through the launcher protocol).
  • Real runs: git, the package registries (crates.io, PyPI, Go, RubyGems, Packagist, Hex, pub.dev), Redis and PostgreSQL clients, ip, fc-list/pango-view, trash, downloads, disk usage, apt.

Not verified against the real thing

  • The session's network blocked most web APIs (Slack, Trello, Asana, ClickUp, TickTick, Raindrop, CoinGecko, Finnhub, TMDB, YouTube, Reddit, Wikipedia, Cloudflare, Codeberg, Maven, NuGet). Their response shapes follow each API's documentation.
  • No desktop session, audio or printers were available. Window Manager, Keyboard Layouts, Privacy, Printers, Radio, YouTube playback and Text to Speech need a real session to confirm.

Generated by Claude Code

claude added 10 commits October 28, 2026 10:28
… Downloads

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WzDMDJteorsmKRm6FVPX94
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WzDMDJteorsmKRm6FVPX94
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WzDMDJteorsmKRm6FVPX94
…ron Helper and Dev Reference

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WzDMDJteorsmKRm6FVPX94
…n any day

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WzDMDJteorsmKRm6FVPX94
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WzDMDJteorsmKRm6FVPX94

Copy link
Copy Markdown
Contributor Author

The extensions check fails at deno check with 88 type errors (Icons.radio, Icons.database, …). This is expected: the workflow type-checks against the SDK on backslash main, and those icons arrive with backslash-app/backslash#64. Against that SDK, fmt, lint, check, all 744 tests (run with the CI flags) and scripts/validate.ts pass locally. I'll re-run the check once #64 is merged.


Generated by Claude Code

@stevenpersia
stevenpersia merged commit 87ddd17 into main Oct 28, 2026
1 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants