From wallabag
Set up Wallabag credentials — save the instance URL, OAuth client ID/secret, and user credentials. Use when the user wants to configure Wallabag, asks to connect to a Wallabag instance, asks "how do I set this up," or wants to check current Wallabag connection status.
npx claudepluginhub cameri/claude-skills --plugin wallabagThis skill is limited to using the following tools:
<objective>
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Migrates code, prompts, and API calls from Claude Sonnet 4.0/4.5 or Opus 4.1 to Opus 4.5, updating model strings on Anthropic, AWS, GCP, Azure platforms.
Walks every branching path and boundary condition in code, specs, or diffs, reporting only unhandled edge cases.
<quick_start>
Save credentials: /wallabag:access url=<URL> client_id=<ID> client_secret=<SECRET> username=<USER> password=<PASS>
Check status: /wallabag:access (no args)
Guided setup: /wallabag:access setup
</quick_start>
<credential_format>
~/.claude/channels/wallabag/${ENV}.env:
WALLABAG_URL=https://app.wallabag.it
WALLABAG_CLIENT_ID=1_abc123
WALLABAG_CLIENT_SECRET=secrethere
WALLABAG_USERNAME=myuser
WALLABAG_PASSWORD=mypassword
All five keys are required. Never quote values. chmod 600 after writing.
</credential_format>
Read ~/.claude/channels/wallabag/${ENV}.env (missing = not configured) and show:
WALLABAG_URL: show value, or "not set"....).http --ignore-stdin -f POST "${WALLABAG_URL%/}/oauth/v2/token" \
grant_type=password \
client_id="$WALLABAG_CLIENT_ID" \
client_secret="$WALLABAG_CLIENT_SECRET" \
username="$WALLABAG_USERNAME" \
password="$WALLABAG_PASSWORD"
access_token): show "✓ Connection OK"/wallabag:access env=$ENV again after correcting the failing credential."*.env files in ~/.claude/channels/wallabag/, stripping .env suffix. Display .env as "(default)".setup — guided setup:
https://app.wallabag.it or https://wallabag.example.com).$WALLABAG_URL/developer/client/create. Use any redirect URL (e.g. https://localhost)./wallabag:access env=$ENV url=<URL> client_id=<ID> client_secret=<SECRET> username=<USER> password=<PASS>
Explicit save — url=<URL> client_id=<ID> client_secret=<SECRET> username=<USER> password=<PASS>:
Parse key=value pairs (space-separated). Accept both url= and WALLABAG_URL= forms (strip WALLABAG_ prefix if present, case-insensitive).
Required keys: url, client_id, client_secret, username, password. If any missing, list absent keys and stop.
mkdir -p ~/.claude/channels/wallabag${ENV}.env if present; update/add provided keys, preserve others.KEY=value (no quotes).chmod 600 ~/.claude/channels/wallabag/${ENV}.envWALLABAG_URL before writing.clear — remove all credentials for this environment:
Delete ~/.claude/channels/wallabag/${ENV}.env. Confirm first: "This will remove all Wallabag credentials for environment '$ENV'. Are you sure?" Only proceed if confirmed.
clear <key> — remove a single credential:
Remove only the named key line from ${ENV}.env. Valid keys: url, client_id, client_secret, username, password.
</workflow>
<security_checklist>
WALLABAG_PASSWORD — show set/not-set onlyWALLABAG_CLIENT_SECRET — show only first 4 chars + ...chmod 600 the .env file after writingWALLABAG_URL--ignore-stdin to http to prevent hanging on stdinhttps:// vs http:// and certificate validity
</security_checklist><success_criteria>
~/.claude/channels/wallabag/${ENV}.env with chmod 600access_token)