diff --git a/src/main/java/com/google/devtools/build/lib/packages/BUILD b/src/main/java/com/google/devtools/build/lib/packages/BUILD
index 93313ad..03d8627 100644
--- a/src/main/java/com/google/devtools/build/lib/packages/BUILD
+++ b/src/main/java/com/google/devtools/build/lib/packages/BUILD
@@ -33,6 +33,7 @@
     deps = [
         ":build_type",
         ":type",
+        "//src/main/java/com/google/devtools/build/lib/actions:execution_requirements",
         "//src/main/java/com/google/devtools/build/lib/analysis:config/config_matching_provider",
         "//src/main/java/com/google/devtools/build/lib/analysis:config/transitions/configuration_transition",
         "//src/main/java/com/google/devtools/build/lib/analysis:config/transitions/no_transition",
@@ -65,7 +66,6 @@
         "//src/main/java/net/starlark/java/spelling",
         "//src/main/protobuf:build_java_proto",
         "//third_party:auto_value",
-        "//third_party:flogger",
         "//third_party:guava",
         "//third_party:jsr305",
         "//third_party/protobuf:protobuf_java",
diff --git a/src/main/java/com/google/devtools/build/lib/packages/TargetUtils.java b/src/main/java/com/google/devtools/build/lib/packages/TargetUtils.java
index 2c964ef..25e053a 100644
--- a/src/main/java/com/google/devtools/build/lib/packages/TargetUtils.java
+++ b/src/main/java/com/google/devtools/build/lib/packages/TargetUtils.java
@@ -22,6 +22,7 @@
 import com.google.common.base.Strings;
 import com.google.common.collect.ImmutableMap;
 import com.google.common.collect.Maps;
+import com.google.devtools.build.lib.actions.ExecutionRequirements;
 import com.google.devtools.build.lib.cmdline.Label;
 import com.google.devtools.build.lib.syntax.Dict;
 import com.google.devtools.build.lib.syntax.EvalException;
@@ -53,8 +54,9 @@
         || tag.startsWith("no-")
         || tag.startsWith("supports-")
         || tag.startsWith("disable-")
-        || tag.equals("local")
-        || tag.startsWith("cpu:");
+        || tag.startsWith("cpu:")
+        || tag.equals(ExecutionRequirements.LOCAL)
+        || tag.equals(ExecutionRequirements.WORKER_KEY_MNEMONIC);
   }
 
   private TargetUtils() {} // Uninstantiable.
diff --git a/src/test/java/com/google/devtools/build/lib/packages/TargetUtilsTest.java b/src/test/java/com/google/devtools/build/lib/packages/TargetUtilsTest.java
index d140af0..bfc69cf 100644
--- a/src/test/java/com/google/devtools/build/lib/packages/TargetUtilsTest.java
+++ b/src/test/java/com/google/devtools/build/lib/packages/TargetUtilsTest.java
@@ -191,7 +191,7 @@
   }
 
   @Test
-  public void testFilteredExecutionInfo_FromUncheckedExecRequirements() throws Exception {
+  public void testFilteredExecutionInfo_fromUncheckedExecRequirements() throws Exception {
     scratch.file("tests/BUILD", "sh_binary(name = 'no-tag', srcs=['sh.sh'])");
 
     Rule noTag = (Rule) getTarget("//tests:no-tag");
@@ -212,6 +212,23 @@
   }
 
   @Test
+  public void testFilteredExecutionInfo_fromUncheckedExecRequirements_withWorkerKeyMnemonic()
+      throws Exception {
+    scratch.file("tests/BUILD", "sh_binary(name = 'no-tag', srcs=['sh.sh'])");
+
+    Rule noTag = (Rule) getTarget("//tests:no-tag");
+
+    Map<String, String> execInfo =
+        TargetUtils.getFilteredExecutionInfo(
+            Dict.of(
+                (Mutability) null, "supports-workers", "1", "worker-key-mnemonic", "MyMnemonic"),
+            noTag, /* allowTagsPropagation */
+            true);
+    assertThat(execInfo)
+        .containsExactly("supports-workers", "1", "worker-key-mnemonic", "MyMnemonic");
+  }
+
+  @Test
   public void testFilteredExecutionInfo() throws Exception {
     scratch.file(
         "tests/BUILD",
@@ -244,7 +261,7 @@
   }
 
   @Test
-  public void testFilteredExecutionInfo_WithNullUncheckedExecRequirements() throws Exception {
+  public void testFilteredExecutionInfo_withNullUncheckedExecRequirements() throws Exception {
     scratch.file(
         "tests/BUILD",
         "sh_binary(name = 'tag1', srcs=['sh.sh'], tags=['supports-workers', 'no-cache'])");
@@ -260,7 +277,7 @@
   }
 
   @Test
-  public void testFilteredExecutionInfoWhenIncompatibleFlagDisabled() throws Exception {
+  public void testFilteredExecutionInfo_whenIncompatibleFlagDisabled() throws Exception {
     // when --incompatible_allow_tags_propagation=false
     scratch.file(
         "tests/BUILD",
diff --git a/src/test/java/com/google/devtools/build/lib/skylark/BUILD b/src/test/java/com/google/devtools/build/lib/skylark/BUILD
index 30ec4a2..531ed07 100644
--- a/src/test/java/com/google/devtools/build/lib/skylark/BUILD
+++ b/src/test/java/com/google/devtools/build/lib/skylark/BUILD
@@ -58,15 +58,12 @@
         "//src/main/java/com/google/devtools/build/lib/rules/python",
         "//src/main/java/com/google/devtools/build/lib/skyframe:aspect_value_key",
         "//src/main/java/com/google/devtools/build/lib/skyframe:configured_target_and_data",
-        "//src/main/java/com/google/devtools/build/lib/skyframe:sky_functions",
         "//src/main/java/com/google/devtools/build/lib/skyframe:skyframe_cluster",
         "//src/main/java/com/google/devtools/build/lib/util",
         "//src/main/java/com/google/devtools/build/lib/util:classpath",
         "//src/main/java/com/google/devtools/build/lib/util:filetype",
         "//src/main/java/com/google/devtools/build/lib/vfs",
         "//src/main/java/com/google/devtools/build/lib/vfs:pathfragment",
-        "//src/main/java/com/google/devtools/build/skyframe",
-        "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects",
         "//src/main/java/com/google/devtools/common/options",
         "//src/main/java/net/starlark/java/annot",
         "//src/test/java/com/google/devtools/build/lib/actions/util",
diff --git a/src/test/java/com/google/devtools/build/lib/skylark/StarlarkRuleImplementationFunctionsTest.java b/src/test/java/com/google/devtools/build/lib/skylark/StarlarkRuleImplementationFunctionsTest.java
index 2da9692..656d03d 100644
--- a/src/test/java/com/google/devtools/build/lib/skylark/StarlarkRuleImplementationFunctionsTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skylark/StarlarkRuleImplementationFunctionsTest.java
@@ -384,6 +384,30 @@
   }
 
   @Test
+  public void testCreateSpawnActionEnvAndExecInfo_withWorkerKeyMnemonic() throws Exception {
+    StarlarkRuleContext ruleContext = createRuleContext("//foo:foo");
+    setRuleContext(ruleContext);
+    ev.exec(
+        "ruleContext.actions.run_shell(",
+        "  inputs = ruleContext.files.srcs,",
+        "  outputs = ruleContext.files.srcs,",
+        "  env = {'a' : 'b'},",
+        "  execution_requirements = {",
+        "    'supports-workers': '1',",
+        "    'worker-key-mnemonic': 'MyMnemonic',",
+        "  },",
+        "  mnemonic = 'DummyMnemonic',",
+        "  command = 'dummy_command',",
+        "  progress_message = 'dummy_message')");
+    SpawnAction action =
+        (SpawnAction)
+            Iterables.getOnlyElement(
+                ruleContext.getRuleContext().getAnalysisEnvironment().getRegisteredActions());
+    assertThat(action.getExecutionInfo())
+        .containsExactly("supports-workers", "1", "worker-key-mnemonic", "MyMnemonic");
+  }
+
+  @Test
   public void testCreateSpawnActionUnknownParam() throws Exception {
     setRuleContext(createRuleContext("//foo:foo"));
     ev.checkEvalErrorContains(
diff --git a/src/test/shell/integration/bazel_worker_test.sh b/src/test/shell/integration/bazel_worker_test.sh
index 0714bf1..2d51904 100755
--- a/src/test/shell/integration/bazel_worker_test.sh
+++ b/src/test/shell/integration/bazel_worker_test.sh
@@ -126,13 +126,17 @@
     argfile_inputs.append(argfile)
     argfile_arguments.append("@" + argfile.path)
 
+  execution_requirements = {"supports-workers": "1"}
+  if ctx.attr.worker_key_mnemonic:
+    execution_requirements["worker-key-mnemonic"] = ctx.attr.worker_key_mnemonic
+
   ctx.actions.run(
       inputs=argfile_inputs + ctx.files.srcs,
       outputs=[output],
       executable=worker,
       progress_message="Working on %s" % ctx.label.name,
-      mnemonic="Work",
-      execution_requirements={"supports-workers": "1"},
+      mnemonic=ctx.attr.action_mnemonic,
+      execution_requirements=execution_requirements,
       arguments=ctx.attr.worker_args + argfile_arguments,
   )
 
@@ -141,6 +145,8 @@
     attrs={
         "worker": attr.label(cfg="host", mandatory=True, allow_files=True, executable=True),
         "worker_args": attr.string_list(),
+        "worker_key_mnemonic": attr.string(),
+        "action_mnemonic": attr.string(default = "Work"),
         "args": attr.string_list(),
         "srcs": attr.label_list(allow_files=True),
         "multiflagfiles": attr.bool(default=False),
@@ -195,6 +201,33 @@
   assert_equals "HELLO WORLD" "$(cat $BINS/hello_world_uppercase.out)"
 }
 
+function test_shared_worker() {
+  prepare_example_worker
+  cat >>BUILD <<EOF
+work(
+  name = "hello_world",
+  worker = ":worker",
+  action_mnemonic = "Hello",
+  worker_key_mnemonic = "SharedWorker",
+  args = ["--write_uuid"],
+)
+
+work(
+  name = "goodbye_world",
+  worker = ":worker",
+  action_mnemonic = "Goodbye",
+  worker_key_mnemonic = "SharedWorker",
+  args = ["--write_uuid"],
+)
+EOF
+
+  bazel build :hello_world :goodbye_world &> $TEST_log \
+    || fail "build failed"
+  worker_uuid_1=$(cat $BINS/hello_world.out | grep UUID | cut -d' ' -f2)
+  worker_uuid_2=$(cat $BINS/goodbye_world.out | grep UUID | cut -d' ' -f2)
+  assert_equals "$worker_uuid_1" "$worker_uuid_2"
+}
+
 function test_multiple_flagfiles() {
   prepare_example_worker
   cat >>BUILD <<EOF
@@ -456,7 +489,7 @@
 )
 EOF
 
-  sed -i.bak '/execution_requirements/d' work.bzl
+  sed -i.bak '/execution_requirements=execution_requirements/d' work.bzl
   rm -f work.bzl.bak
 
   bazel build --worker_quit_after_build :hello_world &> $TEST_log \
