Skip to content

feat(reddit): proxy-mode client support + deployment guide - #235

Draft
jack-nsheaps[bot] wants to merge 5 commits into
mainfrom
claude/nice-curie-j1y1jl
Draft

feat(reddit): proxy-mode client support + deployment guide#235
jack-nsheaps[bot] wants to merge 5 commits into
mainfrom
claude/nice-curie-j1y1jl

Conversation

@jack-nsheaps

@jack-nsheaps jack-nsheaps Bot commented Jun 9, 2026

Copy link
Copy Markdown
Contributor

Summary

Adds optional proxy mode to the reddit plugin so agents in egress-restricted environments can reach Reddit through an operator-deployed reverse proxy, plus an operator guide for deploying one from off-the-shelf components.

Scope was deliberately reduced after review: this PR ships client-side support + docs only. It does not ship a runnable proxy stack — building the proxy was out of scope ("use something off the shelf").

What's included

  • scripts/reddit-fetch.shREDDIT_PROXY_URL / REDDIT_PROXY_TOKEN / REDDIT_PROXY_HEADER env-var support. Off by default; when unset, behavior is unchanged (direct to www.reddit.com). Output **Link**: lines always show canonical www.reddit.com URLs even when proxied.
  • docs/proxy-deployment.md — self-contained operator guide: reference architecture (APISIX + cloudflared, with optional Prometheus/Grafana for per-token usage graphs), Cloudflare Zero Trust API-token Bypass setup, per-agent token minting/revocation, Reddit OAuth (client_credentials) + token refresh, observability, and a security-risk table. Includes a provisional nsheaps/iac "arcane" deploy section with TODO(nate): markers pending the deployment contract.
  • README.md + skills/fetch-reddit/SKILL.md — proxy-mode usage sections.
  • docs/research/reddit-proxy-deployment-options.md — research basis for the approach.

Removed after review

  • The full runnable deploy/ stack (docker-compose + APISIX config + bootstrap script + token-refresher daemon + Prometheus + Grafana provisioning, 11 files). The guide now describes how to stand up an off-the-shelf proxy instead of shipping one.

Not yet done / blocked

  • The proxy is not deployed anywhere — Reddit remains unreachable from inside agent containers until the stack is stood up (an iac/arcane + cloudflared operator task).
  • The iac/arcane deploy section is provisional pending confirmation of the deployment contract.

🤖 Generated with Claude Code

https://claude.ai/code/session_01NQDWmCYRS2c3JaJ1spEp3S

claude added 2 commits June 9, 2026 19:42
Research evaluating an off-the-shelf reverse-proxy stack (Apache APISIX +
etcd + Prometheus + Grafana + cloudflared) to let egress-restricted agents
reach Reddit via a Cloudflare Zero Trust-fronted proxy. Covers gateway
selection, Reddit OAuth-at-proxy, and the CF Access API-token bypass model.

Foundation for the reddit plugin proxy-mode deployment docs.

https://claude.ai/code/session_01NQDWmCYRS2c3JaJ1spEp3S
Lets the reddit plugin work from egress-restricted environments by routing
fetches through a self-hosted reverse-proxy fronted by Cloudflare Zero Trust.

Plugin (client) changes:
- reddit-fetch.sh: REDDIT_PROXY_URL / REDDIT_PROXY_TOKEN / REDDIT_PROXY_HEADER
  (off by default). Split fetch-base (proxy) from display-base so output
  **Link**: lines always point at www.reddit.com.
- README + fetch-reddit SKILL: document proxy mode.
- version 0.1.1 -> 0.2.0.

Deployment (deploy/): off-the-shelf Apache APISIX gateway + etcd + Prometheus
+ Grafana + cloudflared + token-refresher sidecar, via docker-compose. Per-agent
APISIX consumer keys; Reddit OAuth held only by the proxy; per-consumer usage
metrics in Grafana.

docs/proxy-deployment.md: full operator guide — cloudflared config, the
Cloudflare Zero Trust API-token bypass (CF Access Bypass on the API host +
APISIX key-auth as the backend validator; UI hosts gated by Allow/owner-email),
per-agent token mint/revoke, observability, and a PROVISIONAL nsheaps/iac
"arcane" deploy section with TODO(nate) markers pending the deploy contract.

https://claude.ai/code/session_01NQDWmCYRS2c3JaJ1spEp3S
@jack-nsheaps jack-nsheaps Bot added the request-review Force an AI code review on a draft PR (open non-draft PRs review automatically) label Jun 9, 2026
@github-actions

github-actions Bot commented Jun 9, 2026

Copy link
Copy Markdown
Contributor

Plugin Version Preview

Preview only — plugin versions and marketplace.json are bumped automatically on merge to main, not in this PR. Manual bumps to higher versions are preserved. See the file annotations for the pending change on each plugin.json.

Plugin Base Current Action
reddit 0.1.1 0.2.0 Already bumped
review-utils 0.1.9 0.1.5 Auto-bumped
task-utils 0.3.1 0.3.1 Auto-bumped

@jack-nsheaps jack-nsheaps Bot changed the title feat: reddit MCP proxy mode and deploy stack feat(reddit): proxy mode + off-the-shelf deploy stack Jun 9, 2026
@jack-nsheaps jack-nsheaps Bot added request-review Force an AI code review on a draft PR (open non-draft PRs review automatically) and removed request-review Force an AI code review on a draft PR (open non-draft PRs review automatically) labels Jun 10, 2026
@jack-nsheaps jack-nsheaps Bot added request-review Force an AI code review on a draft PR (open non-draft PRs review automatically) and removed request-review Force an AI code review on a draft PR (open non-draft PRs review automatically) labels Jun 10, 2026
…ting

Per scope review: the request was for DOCS describing how to deploy an
off-the-shelf proxy plus a client-side proxy-URL setting — not a runnable
stack. Remove the over-built deploy/ tree (APISIX+etcd+Prometheus+Grafana
+cloudflared+token-refresher, 11 files) which "created the proxy" against
the explicit "use something off the shelf" instruction.

Kept (as requested):
- docs/proxy-deployment.md — now self-contained (inline reference compose +
  cloudflared config, no dead deploy/ refs); Prometheus/Grafana documented as
  OPTIONAL observability for the "graphs of which API tokens have most use" ask
- reddit-fetch.sh REDDIT_PROXY_URL/TOKEN/HEADER support (the proxy-URL setting)

Fixed dead deploy/ links in README.md and fetch-reddit SKILL.md.
@nsheaps nsheaps changed the title feat(reddit): proxy mode + off-the-shelf deploy stack feat(reddit): proxy-mode client support + deployment guide Aug 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

request-review Force an AI code review on a draft PR (open non-draft PRs review automatically)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants