[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.This issue has 6 comments on GitHub. Read the full discussion on GitHub ↗