[FEATURE] Support URL imports in CLAUDE.md (`@https://...`)
Status Closed — not planned
Maintainer reply None cached
Workaround ✓ Mentioned in thread ↓
Activity 6 comments · opened Feb 26, 2026 · 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.
6 Comments
Noting that this is a related but distinct proposal to #14467.
This absolutely needs to happen asap.
In the meantime I've spent considerable time working on a two-step Hyrbid approach...
FIrst, a Github Action that:
Claude.mdprinciplesWhilst trying to then run on a weekly basis to account for slight drift. It's a time-consuming process and the first thing I thought was that there has to be a better way than this...
Second, I got to making a Claude Plugin that we can enforce on the Enterprise plan which helps us make use of Claude Skills across our entire organisation. Both of these require upkeep and come with a considerable amount of technical debt to them.
I know that things are changing really rapidly (Skills were non-existent a few months ago) but this needs to happen asap. Trying to manage
Claude.mdfiles or even multiple "Skills" per repo is a crazy feat. at the moment. We truly need this. Especally now that we have Claude Skill Eval(uators): https://tessl.io/blog/anthropic-brings-evals-to-skill-creator-heres-why-thats-a-big-deal//tmp/issue-29072-comment.md
I’ve run into a similar architectural challenge in our repositories. I’m considering an approach where we use an upstream repository to centralise organisation-wide instructions and context files.
Instead of relying on a single CLAUDE.md, we could define multiple rule-based Markdown files. This would allow us to separate concerns and isolate specific logic from global rules. For example, coding standards, style guidelines, and other conventions, etc, making the system more modular and maintainable.
https://code.claude.com/docs/en/memory#organize-rules-with-claude/rules/
Closing for now — inactive for too long. Please open a new issue if this is still relevant.
We hit this exact wall building for a team and went a different direction: instead of importing markdown files, BaseThread runs as an MCP server that Claude Code (and Cursor, ChatGPT) read and write shared context from directly. No caching or GitHub Action sync needed since it's always current. Not a CLAUDE.md replacement exactly, but it solves the same "define once, every teammate's Claude sees it" problem. Happy to share details if useful: https://basethread.ai