diff --git a/src/main/java/com/google/devtools/build/lib/packages/AspectDefinition.java b/src/main/java/com/google/devtools/build/lib/packages/AspectDefinition.java
index 5570c3f..a028e71 100644
--- a/src/main/java/com/google/devtools/build/lib/packages/AspectDefinition.java
+++ b/src/main/java/com/google/devtools/build/lib/packages/AspectDefinition.java
@@ -291,6 +291,15 @@
       requiredProviders.addNativeSet(ImmutableSet.copyOf(providers));
       return this;
     }
+    
+    /**
+     * Asserts that this aspect can only be evaluated for rules that supply all of the specified
+     * Skylark providers.
+     */
+    public Builder requireSkylarkProviders(SkylarkProviderIdentifier... skylarkProviders) {
+      requiredProviders.addSkylarkSet(ImmutableSet.copyOf(skylarkProviders));
+      return this;
+    }
 
     public Builder requireAspectsWithProviders(
         Iterable<ImmutableSet<SkylarkProviderIdentifier>> providerSets) {
diff --git a/src/main/java/com/google/devtools/build/lib/packages/RuleClass.java b/src/main/java/com/google/devtools/build/lib/packages/RuleClass.java
index 5709e64..6e1e70b 100644
--- a/src/main/java/com/google/devtools/build/lib/packages/RuleClass.java
+++ b/src/main/java/com/google/devtools/build/lib/packages/RuleClass.java
@@ -808,6 +808,13 @@
       return this;
     }
 
+    public Builder advertiseSkylarkProvider(SkylarkProviderIdentifier... skylarkProviders) {
+      for (SkylarkProviderIdentifier skylarkProviderIdentifier : skylarkProviders) {
+        advertisedProviders.addSkylark(skylarkProviderIdentifier);
+      }
+      return this;
+    }
+
     /**
      * Set if the rule can have any provider. This is true for "alias" rules like
      * <code>bind</code> .
