Project Isolation

How devto isolates workspace context per project directory.

devto uses per-directory configuration to isolate workspace context. Each project can connect to a different workspace, project, or even a different provider — and switching between them is automatic based on your current working directory.

How it works

When Claude Code invokes a devto tool, the MCP server resolves the active workspace by walking up the directory tree from your current working directory, looking for a .devto.json file.

bash
~/projects/
saas-app/
.devto.json → Workspace A, Jira, project ENG
src/
package.json
mobile-app/
.devto.json → Workspace B, Jira, project MOB
src/
package.json
side-project/
→ No .devto.json — falls back to global config

Directory walking

devto walks up from your current directory to the filesystem root, stopping at the first .devto.json it finds. This means you can be in any subdirectory of your project and devto will still find the right configuration.

bash
# All of these resolve to the same workspace:
~/projects/saas-app/
~/projects/saas-app/src/
~/projects/saas-app/src/components/
~/projects/saas-app/tests/unit/

Setting up multiple projects

Run devto init separately in each project directory. Each one creates its own .devto.json with independent workspace settings.

bash
$ cd ~/projects/saas-app && devto init
$ cd ~/projects/mobile-app && devto init

Removing a project link

Run devto unlink in the project directory to delete the .devto.json file and disconnect the project from devto. This does not affect your workspace or tickets.