A fast, native RSS reader — and a CLI your AI agent can actually drive. Papr is two front-ends over one local database: A desktop reader — fast, native, offline-first. No account, no cloud.
$ npx -y skills add l0ng-ai/papr --agent claude-code
Run the curl in your terminal, the rest in Claude Code.
What's inside
A fast, native RSS reader — and a CLI your AI agent can actually drive.
Papr is two front-ends over one local database:
papr, an agent-facing CLI — so an autonomous agent (Claude Code, Codex,
OpenCode…) can read, search and triage your feeds straight from the shell.
Jump to it ↓Both read the same database through the shared papr-core crate, so the app and
the CLI can never drift apart.
| Platform | How |
|---|---|
| macOS | brew install --cask l0ng-ai/papr/papr — or grab the .dmg |
| Windows | Download the .msi installer |
| Linux | Download the .AppImage or .deb |
All packages live on the latest release. The macOS builds are Developer ID signed and notarized.
papr — your feeds, handed to your agentThis is what makes Papr different. papr is a command-line companion built for
autonomous agents to drive over the shell. Point your agent at it and it can
work your feeds with no GUI:
feeds, list, read, full-text searchmark read/star/later, extract full text, refreshRun bare papr and it prints your unread dashboard plus the next useful
commands, so the agent orients with zero manual. Output is
TOON — ~40% fewer tokens than JSON — with definitive
counts and structured exit codes.
$ papr
unread: 206 starred: 17 later: 0 feeds: 15
articles[10]{id,feed,title,flags,date}:
3664,V2EX,[Java] 使用 kkRepo 搭建 Maven 私服,unread.star,"2026-06-25"
...
help[4]: Run `papr read <id>` to read an article's full text, ...
The bundled papr-rss skill loads on demand
when an agent recognizes a feed-related task, so it costs nothing until you use
it. Install it with skills:
npx skills add https://github.com/l0ng-ai/papr/tree/main/skills/papr-rss
Want the agent proactively aware of your feeds every conversation? papr setup
wires up an ambient SessionStart hook (Claude Code, Codex, OpenCode).
| Platform | How |
|---|---|
| macOS / Linux | brew install l0ng-ai/papr/papr-cli |
| Windows | Download papr-x86_64-pc-windows-msvc.zip, unzip, drop papr.exe on your PATH |
| Any | Prebuilt papr-<target>.tar.gz from the latest release, or cargo build --release -p papr-cli |
Full command reference, agent setup, and install options → docs/cli.md
.github/
workflows/
ci.yml
claude-code-review.yml
claude.yml
release.yml
update-tap.yml
.gitignore
.impeccable.md
Cargo.lock
Cargo.toml
crates/
papr-cli/
Cargo.toml
src/
main.rs
setup.rs
toon.rs
papr-core/
Cargo.toml
resources/
feed-directory.json
src/
ai.rs
db.rs
error.rs
extraction.rs
ingestion/
discovery.rs
fetch.rs
mod.rs
newsletter.rs
parse.rs
refresh.rs
sources.rs
lib.rs
models.rs
opml.rs
sanitize.rs
sync.rs
docs/
cli.md
logo.svg
screenshot.webp
extension/
icons/
icon-128.png
icon-16.png
icon-48.png
manifest.json
package.json
popup.html
popup.js
README.md
src/
background.js
content.js
detect.js
test/
detect.test.js
index.html
LICENSE
package.json
pnpm-lock.yaml
public/
papr.svg
tauri.svg
vite.svg
README.md
scripts/
gen-tray-icon.mjs
skills/
papr-rss/
SKILL.md
src/
src-tauri/
.gitignore
build.rs
capabilities/
default.json
Cargo.lock
Cargo.toml
icons/
128x128.png
128x128@2x.png
32x32.png
64x64.png
android/
mipmap-anydpi-v26/
ic_launcher.xml
mipmap-hdpi/
ic_launcher_foreground.png
ic_launcher_round.png
ic_launcher.png
mipmap-mdpi/
ic_launcher_foreground.png
ic_launcher_round.png
ic_launcher.png
mipmap-xhdpi/
ic_launcher_foreground.png
ic_launcher_round.png
ic_launcher.png
mipmap-xxhdpi/
ic_launcher_foreground.png
ic_launcher_round.png
ic_launcher.png
mipmap-xxxhdpi/
ic_launcher_foreground.png
ic_launcher_round.png
ic_launcher.png
values/
ic_launcher_background.xml
icon.icns
icon.ico
icon.png
ios/
AppIcon-20x20@1x.png
AppIcon-20x20@2x-1.png
AppIcon-20x20@2x.png
AppIcon-20x20@3x.png
AppIcon-29x29@1x.png
AppIcon-29x29@2x-1.png
AppIcon-29x29@2x.png
AppIcon-29x29@3x.png
AppIcon-40x40@1x.png
AppIcon-40x40@2x-1.png
AppIcon-40x40@2x.png
AppIcon-40x40@3x.png
AppIcon-512@2x.png
AppIcon-60x60@2x.png
AppIcon-60x60@3x.png
AppIcon-76x76@1x.png
AppIcon-76x76@2x.png
AppIcon-83.5x83.5@2x.png
papr-icon.svg
Square107x107Logo.png
Square142x142Logo.png
Square150x150Logo.png
Square284x284Logo.png
Square30x30Logo.png
Square310x310Logo.png
Square44x44Logo.png
Square71x71Logo.png
Square89x89Logo.png
StoreLogo.png
tray-icon.svg
tray.png
src/
backing.rs
commands.rs
lib.rs
main.rs
notify.rs
page_view.rs
scheduler.rs
state.rs
translate.rs
tray.rs
tauri.conf.json
api.ts
App.tsx
components/
AddFeedDialog.tsx
ArticleList.tsx
CommandPalette.tsx
ConfirmDialog.tsx
ContextMenu.tsx
ErrorBoundary.tsx
ExploreDialog.tsx
FeedAvatar.tsx
HighlightLayer.tsx
Icon.tsx
Lightbox.tsx
PlayerBar.tsx
PromptDialog.tsx
Reader.tsx
ResizeHandle.tsx
SettingsDialog.tsx
Sidebar.tsx
TagPicker.tsx
hooks/
articleActions.ts
useDismiss.ts
useFocusTrap.ts
useMenuKeyboard.ts
i18n.ts
lib/
anchor.test.ts
anchor.ts
currentList.ts
download.ts
errors.ts
feedMeta.ts
highlightColors.ts
highlightDom.ts
imageBytes.test.ts
imageBytes.ts
inputProps.ts
markdown.ts
platform.ts
rowTranslation.test.ts
rowTranslation.ts
tagColors.ts
updater.ts
viewport.test.ts
viewport.ts
listTranslation.ts
locales/
en.json
ja.json
zh.json
main.tsx
player.ts
store.ts
styles.css
toast.ts
translation.ts
types.ts
vite-env.d.ts
tsconfig.json
tsconfig.node.json
vite.config.ts
vitest.config.tsFAQ
papr is a Claude Code plugin with 1 hand-picked skill for content work, indexed on Flowy. Install it with the command on its page. It includes papr-rss. Its skills do not fire on their own yet. Request auto-invocation to have Flowy route them as you prompt. Free and open source.