Hello fellow datanistas!
Ever find yourself copying files between projects, wrestling with multi-root workspaces, or just wishing your coding agent could see beyond the current folder? I used to think that was just how things had to be. Turns out, I was wrong—and it’s way easier than I thought.
This post is about a simple but powerful shift in how we use AI coding assistants like Cursor, GitHub Copilot, and Claude Code. I’ll share how I stopped fighting workspace boundaries and started referencing code from anywhere on my machine, all by being explicit with file paths. If you’ve ever felt boxed in by your tools, this might help you break free.
For the longest time, I assumed coding agents were stuck in the workspace I opened them in. That led me down all sorts of rabbit holes—copying files, setting up complex workspace configs, and generally making things harder than they needed to be. But the real limitation wasn’t the tools; it was my mental model.
Here’s the trick: modern AI coding assistants can read and write files anywhere on your file system, not just the current workspace. You just have to tell them where to look. For example, when I’m writing in my Obsidian vault (which isn’t even a Git repo), I can have the agent pull code directly from my LlamaBot repository by referencing the full path. No copying, no switching workspaces, no extra config.
It’s as simple as saying, “read the implementation from ~/github/llamabot/llamabot/bot/simplebot.py.” The agent grabs the file, and I keep my focus. Need to find a notebook? Just ask the agent to search by filename in the right directory. If you’re working with lots of repos, you can jot down common paths in an AGENTS.md file, but honestly, you don’t have to—just reference them as needed.
This approach has made my workflow so much smoother, especially when I’m writing about code that lives in a different place than my writing. The agent can pull in the exact code I need, straight from the source, so I know I’m sharing accurate examples. And it’s not just for blogging: you can compare implementations, reuse code, update files across projects, and more—all by being explicit with paths or instructions.
If you don’t have a repo cloned locally, just tell the agent to clone it temporarily, grab what it needs, and clean up after. No more workspace management headaches. Just clear, direct instructions.
The real power of coding agents comes from knowing you can reference any file on your system—no special configs, just explicit paths. It’s a universal trick that makes cross-repository work way less painful.
Have you ever run into workspace limitations with your coding agent? What’s your go-to workaround—or have you found a better way? I’d love to hear your stories or tips.
If this resonates, check out the full post for step-by-step workflows and more examples: How to Reference Code Across Repositories with Coding Agents. Feel free to share with anyone who’s ever been frustrated by workspace boundaries!
Happy Coding,
Eric


Nice trick with the explicit paths. I've been doing something similar with OpenCode where you can set up an instruction file that points to external repos you reference regularly. Saves a tonne of context switching. Wrote a full guide on getting that kind of workflow set up from scratch if it's useful: https://reading.sh/the-definitive-guide-to-opencode-from-first-install-to-production-workflows-aae1e95855fb