[FEATURE] Support URL imports in CLAUDE.md (`@https://...`)

Resolved 💬 6 comments Opened Feb 26, 2026 by rawler Closed May 29, 2026

Preflight Checklist

  • [x] I have searched existing requests and this feature hasn't been requested yet
  • [x] This is a single feature request (not multiple features)

Problem Statement

Teams working across multiple repositories often want to share a common set of CLAUDE.md instructions (coding standards, security rules, workflow conventions). The current options all have significant drawbacks:

  • User-level config (~/.claude/CLAUDE.md, ~/.claude/rules/): Per-machine, requires each collaborator to set up their workstation, and applies to all repos rather than a specific set.
  • Organization-managed policy (/etc/claude-code/CLAUDE.md): Too broad — applies to everything, not a targeted set of repos.
  • Git submodules: Adds operational complexity (submodule init/update), and many teams avoid submodules for good reason.
  • Copy + CI sync: Fragile, adds maintenance burden, and the copies can drift.
  • Symlinks: Requires local filesystem assumptions, doesn't work across collaborators.

None of these provide a simple "define once, reference everywhere, works for any collaborator on clone" solution.

Proposed Solution

Allow the existing @ import syntax to resolve URLs:

```markdown
# Project-specific rules

  • Use TypeScript strict mode

# Shared team standards
@https://raw.github.com/our-org/shared-claude-rules/main/code-style.md
@https://raw.github.com/our-org/shared-claude-rules/main/security.md


#### Caching

  To avoid fetching on every session start, the resolved content should be cached locally (e.g., with a TTL or ETag-based revalidation). A manual cache-bust mechanism (like a CLI flag or command) would cover cases where the user
  wants to pick up changes immediately.

#### Context usage

  URL imports would consume exactly the same context as inlining the same content directly in CLAUDE.md — this is not additional overhead, just a different storage location for the same instructions.

#### Benefits

  - Zero local setup: works for any collaborator immediately on clone.
  - Scoped: only applies to repos whose CLAUDE.md references the URL, not globally.
  - Single source of truth: update one file, all referencing repos pick it up (on cache expiry).
  - Natural extension: the @ import syntax already exists for local paths — URLs are a logical next step.

### Alternative Solutions

- [Organization-wide Claude.md](https://github.com/anthropics/claude-code/issues/14467) - needs specific git/github integration
- Ensure similar guarantees for any URL requested in natural text in Claude.md. Avoids the "markdown-scope"-caveat of an import.

### Priority

Medium - Would be very helpful

### Feature Category

Configuration and settings

### Use Case Example

My team are developing a set of systems across a few different technologies and domains. Most of these systems shares a few aspect with the others, but not all. Using git submodules would be possible, but cumbersome & easy to miss an update.

### Additional Context

URL-dereferencing would enable community-driven opinionated or tech-specific common context to be developed & referenced. (I.E. common Claude guidelines for building React, Media-processing, or accessibility-enabled tech). While security and supply-chain attacks are clearly a possible concern with such approach, they can somewhat be mitigated by making the URL reference specific revisions.

View original on GitHub ↗

This issue has 6 comments on GitHub. Read the full discussion on GitHub ↗