Continuous reconciliation that keeps your in-development packages synced into node_modules, vendor, or site-packages across reinstalls — with zero manifest edits.
Traditional symlinks break the moment dependencies are installed. linkd introduces Kubernetes-style background reconciliation to local development.
npm install, composer update, or uv sync wipes your links without warning.pnpm can accidentally mutate your global machine-wide store."file:../lib" dependencies accidentally get committed to production branches.Natively detects manifests, virtual environments, and package managers across 11 distinct ecosystems.
Deep integration with npm, pnpm, yarn, and bun. Automatically detects monorepo package roots, links into node_modules, and creates isolated project-local shadow directories for pnpm to prevent global store corruption.
# 1. Link your UI kit into your web app
linkd link ./packages/ui-kit ./apps/web-app
# Reconciler automatically links:
# ./packages/ui-kit → ./apps/web-app/node_modules/@acme/ui-kit
# Run installs without breaking links!
cd ./apps/web-app && pnpm install
Run linkd monitor or linkd top to inspect active links, stream live IPC sync logs, force re-syncs, and toggle pause/resume in real-time.
Designed with rock-solid safety guarantees for mission-critical developer environments.
Strict safety gates block any sync operations from writing into global caches like ~/.pnpm-store, redirecting to local shadow copies.
Sync operations write to temporary staging roots and swap atomically via filesystem renames, eliminating transient build failures.
Hierarchical path validation guards against circular watching when syncing nested, monorepo, or parent/child directory trees.
Every synced folder is sealed with a .linkd-marker.json manifest ensuring linkd never overwrites or deletes untracked developer files.
Seamless Unix Domain Sockets on Linux/macOS and Named Pipes on Windows provide high-performance, non-blocking daemon communication.
Register packages once with linkd register and attach them to any number of consumer projects with linkd use <pkg>.
Everything you need to master local-dev package reconciliation across every language stack.
Step-by-step tutorial on linking your first library, verifying reconciliation, and cleaning up dev links in under 3 minutes.
Read tutorial →Deep-dive into Kubernetes-style continuous state management, atomic swaps, and lockfile completion markers.
View architecture →Detailed setup guides for JS/TS, Flutter/Dart, .NET, Ruby, Swift, Elixir, PHP, Python, Go, Rust, JVM, and Custom.
Explore ecosystems →Learn how to use linkd init for zero-effort guided linking, plus full hotkey controls for linkd monitor.
Configure background daemon lifecycle, autostart on system boot via systemd user units (Linux) or launchd plists (macOS).
Setup services →Searchable reference of every linkd subcommand, flag, environment variable, and diagnostic tool in v0.2.2.
Search commands →Read our comprehensive documentation covering all architecture decisions, troubleshooting, and polyglot guides.