Guide · Open source
How to use watchman: install, watch files and trigger actions
Updated · written with AI from the project's own documentation and checked against our catalogue data
Watchman is an open-source file-watching service from Meta that monitors directories and notices when files are created, changed, or deleted. This guide explains what it does, how to get the source code, and when it is the right tool. The source available for this entry is short, so the steps below stick to what it confirms and point out where you will need the project's full documentation.
Quick start
- 1Check your fit. Confirm you need ongoing change detection, not a one-off search.
- 2Clone the repository. Run the git clone command for meta/watchman from GitHub.
- 3Read the build docs. Open the repository README and the homepage at facebook.github.io/watchman for build steps.
- 4Build from source. Follow the project's clone-and-build instructions for your system.
- 5Start the service. Launch Watchman and register the directories you want it to watch, as the official docs describe.
- 6Connect your action. Hook a build, test, or notifier to the change events Watchman reports.
What Watchman does
Watchman runs as a service that watches the directories you point it at. When a file is created, changed, or deleted, it notices the change. It can then run an action or report the change to a program that asked for it.
This makes it useful when you want work to happen automatically as code changes, rather than scanning folders over and over to find out what is new.
- Watches directories for created, changed, and deleted files
- Can run an action in response to a change
- Can report changes to a requesting program
Get the Watchman source code
The repository is hosted on GitHub under the meta organisation. Cloning it is the first step. The source entry lists no prerequisites, so check the project's own documentation for what your system needs before building.
git clone https://github.com/meta/watchmanBuild and run Watchman
The install method for this project is clone-and-build. The source available here does not include the build steps or the commands to start the service, because the README was unavailable when this entry was written.
Follow the build instructions in the repository and the project homepage at https://facebook.github.io/watchman/. Those documents are the authoritative source for compiling, starting the service, and registering directories to watch.
Decide whether Watchman fits your project
Watchman is built for ongoing watching. It suits developers who want to run a build or test when source files change, teams whose tools need fast and reliable notifications about file changes, and developers in large codebases where repeatedly scanning directories is slow.
It is not the best choice for a one-off file search, and it is not a point-and-click app. The source does not describe a graphical interface.
- Good fit: rebuild or retest on source changes
- Good fit: tools that need reliable change notifications
- Good fit: large codebases where directory scans are slow
- Poor fit: one-time file search
- Poor fit: anyone wanting a graphical app
What people use it for
- Re-running a build or test when source files change
- Sending reliable file-change notifications to other tools
- Watching large codebases without repeatedly scanning every directory
Frequently asked questions
Is Watchman free to use?
Yes. Watchman is released under the MIT licence, which is a permissive open-source licence. Check the LICENSE file in the repository for the full terms.
What language is Watchman written in?
Watchman is written in C++. You will need a C++ toolchain to build it from source.
What are the requirements to install Watchman?
The source entry lists no prerequisites. Consult the repository README and the official homepage for your operating system's requirements before building.
How do I install Watchman?
Clone the repository with git clone https://github.com/meta/watchman, then build it from source following the project's documentation.
Does Watchman have a graphical interface?
The available source does not describe a graphical interface. Treat Watchman as a command-line and service tool unless the official docs say otherwise.
What can I use instead of Watchman?
This entry lists no comparable projects. For simple cases, a scheduled scan or a general file-watcher library may be enough, but this source does not compare them to Watchman.
New agent skills, repos and AI tools — every week
The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.
Our verdict
Watchman suits developers and teams who need ongoing, reliable file-change detection, especially in large codebases. If you only need a one-off file search or a point-and-click app, pick a different tool. Because the README was unavailable for this entry, read the official documentation before you build.
Install options & downloads