diff --git a/pw_cli/py/pw_cli/env.py b/pw_cli/py/pw_cli/env.py
index 021c98e..eef188d 100644
--- a/pw_cli/py/pw_cli/env.py
+++ b/pw_cli/py/pw_cli/env.py
@@ -44,6 +44,9 @@
     parser.add_allowed_suffix('_CIPD_INSTALL_DIR')
 
     parser.add_var('PW_DOCTOR_SKIP_CIPD_CHECKS')
+    parser.add_var('PW_ACTIVATE_SKIP_CHECKS',
+                   type=envparse.strict_bool,
+                   default=False)
 
     # TODO(pwbug/274) Remove after some transition time. These are no longer
     # used but may be set by users or downstream projects, or just in currently
diff --git a/pw_env_setup/docs.rst b/pw_env_setup/docs.rst
index 018424e..c243dc9 100644
--- a/pw_env_setup/docs.rst
+++ b/pw_env_setup/docs.rst
@@ -224,6 +224,13 @@
   --cargo-package-file
   "$PW_ROOT/pw_env_setup/py/pw_env_setup/cargo_setup/packages.txt"
 
+Automated Tools
+***************
+Automated tools should set ``PW_ACTIVATE_SKIP_CHECKS=1`` before running
+``activate.sh`` or ``activate.bat``. This will skip the checks on the
+environment and should complete almost instantaneously. Users should not set
+this variable.
+
 Implementation
 **************
 
diff --git a/pw_env_setup/py/pw_env_setup/env_setup.py b/pw_env_setup/py/pw_env_setup/env_setup.py
index a03fdf4..f0461ff 100755
--- a/pw_env_setup/py/pw_env_setup/env_setup.py
+++ b/pw_env_setup/py/pw_env_setup/env_setup.py
@@ -324,10 +324,7 @@
         self._env.echo(Color.bold('Sanity checking the environment:'))
         self._env.echo()
 
-        log_level = 'warn' if 'PW_ENVSETUP_QUIET' in os.environ else 'info'
-        doctor = ['pw', '--no-banner', '--loglevel', log_level, 'doctor']
-
-        self._env.command(doctor)
+        self._env.doctor()
         self._env.echo()
 
         self._env.echo(
diff --git a/pw_env_setup/py/pw_env_setup/environment.py b/pw_env_setup/py/pw_env_setup/environment.py
index 3e4c9b2..396671b 100644
--- a/pw_env_setup/py/pw_env_setup/environment.py
+++ b/pw_env_setup/py/pw_env_setup/environment.py
@@ -419,6 +419,34 @@
         pass
 
 
+class Doctor(Command):
+    def __init__(self, *args, **kwargs):
+        log_level = 'warn' if 'PW_ENVSETUP_QUIET' in os.environ else 'info'
+        super(Doctor, self).__init__(
+            command=['pw', '--no-banner', '--loglevel', log_level, 'doctor'],
+            *args,
+            **kwargs)
+
+    def write(self, outs, windows=(os.name == 'nt'), replacements=()):
+        super_call = lambda: super(Doctor, self).write(
+            outs, windows=windows, replacements=replacements)
+
+        if windows:
+            outs.write('if "%PW_ACTIVATE_SKIP_CHECKS%"=="" (\n')
+            super_call()
+            outs.write(') else (\n')
+            outs.write('echo Skipping environment check because '
+                       'PW_ACTIVATE_SKIP_CHECKS is set\n')
+            outs.write(')\n')
+        else:
+            outs.write('if [ -z "$PW_ACTIVATE_SKIP_CHECKS" ]; then\n')
+            super_call()
+            outs.write('else\n')
+            outs.write('echo Skipping environment check because '
+                       'PW_ACTIVATE_SKIP_CHECKS is set\n')
+            outs.write('fi\n')
+
+
 class BlankLine(_Action):
     """Write a blank line to the init script."""
     def write(  # pylint: disable=no-self-use
@@ -593,6 +621,10 @@
         self._actions.append(Command(command, exit_on_error=exit_on_error))
         self._blankline()
 
+    def doctor(self):
+        """Run 'pw doctor'."""
+        self._actions.append(Doctor())
+
     def function(self, name, body):
         """Define a function."""
         assert not self._finalized
