Skip to content

Confluence

Confluence captures the long-form work that doesn’t show up in commits or tickets: RFCs, design docs, postmortems, blogposts, and the comments you leave on other people’s pages. It feeds your brag doc (“authored 3 RFCs and 14 design-review comments in Q1”) and gives standups a clearer picture than commits alone.

Confluence reuses your Jira authentication — Atlassian uses one account for both products, so there’s no second token to manage.

Terminal window
devrecall auth jira # if you haven't connected Jira yet
devrecall auth confluence # flips the Confluence enabled flag

devrecall auth confluence checks that a Jira token is already on disk and only enables Confluence in your config. There is no separate OAuth flow, no second API token, and nothing extra stored on disk.

If you haven’t run devrecall auth jira first, the command will tell you and exit cleanly.

The next devrecall sync only looks 7 days back. To pull older Confluence pages on a fresh install:

Terminal window
devrecall backfill --since 90d --source confluence # last 3 months
devrecall backfill --since 1y --source confluence # last year

Server-side CQL filtering (contributor = currentUser() for pages, creator = currentUser() for comments) keeps a year-long backfill on a busy workspace down to seconds, not minutes.

ActivityWhat
PagesPages you created or last edited
BlogpostsBlogposts you created or last edited
CommentsComments you wrote on any page or blogpost (yours or not)

Only your own contributions are stored — pages other people wrote that you’ve simply read are skipped. The filter is server-side (accountId lookup against /rest/api/user/current) plus a client-side check on each result.

Read-only. DevRecall never creates, edits, or deletes pages or comments.

Each page, blogpost, or comment becomes one row in your local SQLite database (~/.devrecall/devrecall.db) with metadata:

  • page_id, page_type (page / blogpost / comment)
  • space_key, space_name
  • action (created, updated, commented)
  • parent_title, parent_type (comments only — the doc you commented on)
  • url — direct link back to the page in Confluence

The same auth path works for both. DevRecall talks to https://api.atlassian.com/wiki for Cloud (OAuth bearer token) and to <your-base-url>/wiki with Basic auth for Server / Data Center — picked automatically based on what devrecall auth jira set up.

Atlassian recommends ≤100 requests/minute per user. A typical Confluence sync is two CQL queries (pages + comments) plus pagination — usually under 5 requests for a daily window.

Terminal window
devrecall config set confluence.enabled false

This stops collecting Confluence on the next sync but leaves any already-stored activities in place. To remove the underlying token, disconnect Jira (rm ~/.devrecall/tokens/jira.json) — the Atlassian token is shared.

Confluence: Jira token not found — run devrecall auth jira first. Confluence reuses the Atlassian token stored under that name.

Confluence: no cloud site found in Jira token — your Jira OAuth token wasn’t issued with Confluence access. Re-run devrecall auth jira and accept Confluence scopes when prompted.

Pages I edited aren’t showing up — the collector looks at lastmodified against the current sync window (default: last 7 days). Older edits won’t appear; bump the window with devrecall sync --since 30d.