Wallabag
Overview
Use this skill to operate a Wallabag instance through its API with deterministic shell commands. Keep credentials in environment variables and never hardcode secrets.
Runtime Requirements
- Required binaries:
bash,curl - Required for
tag addandtag remove:jq
Required Environment
Set these variables before running commands:
WALLABAG_BASE_URLWALLABAG_CLIENT_IDWALLABAG_CLIENT_SECRETWALLABAG_USERNAMEWALLABAG_PASSWORD
Example:
export WALLABAG_BASE_URL="https://wallabag.example.com"
export WALLABAG_CLIENT_ID="..."
export WALLABAG_CLIENT_SECRET="..."
export WALLABAG_USERNAME="..."
export WALLABAG_PASSWORD="..."
Command Interface
Main command:
scripts/wallabag.sh <subcommand> [options]
Subcommands:
auth [--show-token]list [--search <text>] [--tag <name>] [--archive 0|1] [--starred 0|1] [--page <n>] [--per-page <n>]get --id <entry_id>create --url <url> [--title <title>] [--tags "tag1,tag2"]update --id <entry_id> [--title <title>] [--tags "tag1,tag2"] [--archive 0|1] [--starred 0|1]delete --id <entry_id>tag add --id <entry_id> --tags "tag1,tag2"tag remove --id <entry_id> --tag "tag"
Workflow
- Run
authto verify OAuth credentials. - Use
createto add bookmarks. - Use
listandgetto retrieve bookmarks. - Use
updateortagcommands to adjust metadata. - Use
deleteonly when removal is required.
Operational Rules
- Keep tokens in process memory only. Do not persist token state to disk.
authdoes not print access tokens unless--show-tokenis explicitly passed.- Return JSON output unchanged where possible.
- Emit actionable error messages on stderr and non-zero exit codes.
- Prefer
tag addandtag removewhen only tag mutation is needed.
Example Prompts
- "Use $wallabag to save https://example.com with tags ai,read-later"
- "Use $wallabag to list starred entries tagged tech"
- "Use $wallabag to remove tag inbox from entry 123"
References
Read API specifics from references/wallabag-api.md when endpoint details are needed.