diff --git a/karaf/webconsole/admin/pom.xml b/karaf/webconsole/admin/pom.xml
index 00e4908..2633291 100644
--- a/karaf/webconsole/admin/pom.xml
+++ b/karaf/webconsole/admin/pom.xml
@@ -55,8 +55,8 @@
             <scope>provided</scope>
         </dependency>
         <dependency>
-            <groupId>org.apache.felix.karaf.gshell</groupId>
-            <artifactId>org.apache.felix.karaf.gshell.admin</artifactId>
+            <groupId>org.apache.felix.karaf.shell</groupId>
+            <artifactId>org.apache.felix.karaf.shell.admin</artifactId>
             <version>0.9.0-SNAPSHOT</version>
             <scope>provided</scope>
         </dependency>
diff --git a/karaf/webconsole/admin/src/main/java/org/apache/felix/karaf/webconsole/admin/AdminPlugin.java b/karaf/webconsole/admin/src/main/java/org/apache/felix/karaf/webconsole/admin/AdminPlugin.java
index 810505f..93154ca 100644
--- a/karaf/webconsole/admin/src/main/java/org/apache/felix/karaf/webconsole/admin/AdminPlugin.java
+++ b/karaf/webconsole/admin/src/main/java/org/apache/felix/karaf/webconsole/admin/AdminPlugin.java
@@ -25,8 +25,8 @@
 import javax.servlet.ServletException;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
-import org.apache.felix.karaf.gshell.admin.AdminService;
-import org.apache.felix.karaf.gshell.admin.Instance;
+import org.apache.felix.karaf.shell.admin.AdminService;
+import org.apache.felix.karaf.shell.admin.Instance;
 import org.apache.felix.webconsole.AbstractWebConsolePlugin;
 import org.json.JSONException;
 import org.osgi.framework.BundleContext;
diff --git a/karaf/webconsole/admin/src/main/resources/OSGI-INF/blueprint/webconsole-admin.xml b/karaf/webconsole/admin/src/main/resources/OSGI-INF/blueprint/webconsole-admin.xml
index 081b1ea..48499a6 100644
--- a/karaf/webconsole/admin/src/main/resources/OSGI-INF/blueprint/webconsole-admin.xml
+++ b/karaf/webconsole/admin/src/main/resources/OSGI-INF/blueprint/webconsole-admin.xml
@@ -20,7 +20,7 @@
 <blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
            xmlns:cm="http://geronimo.apache.org/blueprint/xmlns/blueprint-cm/v1.0.0">
 
-    <reference id="adminService" interface="org.apache.felix.karaf.gshell.admin.AdminService" />
+    <reference id="adminService" interface="org.apache.felix.karaf.shell.admin.AdminService" />
 
     <bean id="adminPlugin" class="org.apache.felix.karaf.webconsole.admin.AdminPlugin" init-method="start" destroy-method="stop">
         <property name="adminService" ref="adminService" />
diff --git a/karaf/webconsole/features/src/main/java/org/apache/felix/karaf/webconsole/features/FeaturesPlugin.java b/karaf/webconsole/features/src/main/java/org/apache/felix/karaf/webconsole/features/FeaturesPlugin.java
index 1984461..821aedf 100644
--- a/karaf/webconsole/features/src/main/java/org/apache/felix/karaf/webconsole/features/FeaturesPlugin.java
+++ b/karaf/webconsole/features/src/main/java/org/apache/felix/karaf/webconsole/features/FeaturesPlugin.java
@@ -221,7 +221,7 @@
         boolean success = false;
         if ( featuresService == null )
         {
-            this.log.error( "GShell Features service is unavailable." );
+            this.log.error( "Shell Features service is unavailable." );
         }
         try
         {
@@ -240,7 +240,7 @@
         boolean success = false;
         if ( featuresService == null )
         {
-            this.log.error( "GShell Features service is unavailable." );
+            this.log.error( "Shell Features service is unavailable." );
         }
         try
         {
@@ -259,7 +259,7 @@
         boolean success = false;
         if ( featuresService == null )
         {
-            this.log.error( "GShell Features service is unavailable." );
+            this.log.error( "Shell Features service is unavailable." );
         }
         try
         {
@@ -278,7 +278,7 @@
         boolean success = false;
         if ( featuresService == null )
         {
-            this.log.error( "GShell Features service is unavailable." );
+            this.log.error( "Shell Features service is unavailable." );
         }
         try
         {
@@ -298,7 +298,7 @@
         boolean success = false;
         if ( featuresService == null )
         {
-            this.log.error( "GShell Features service is unavailable." );
+            this.log.error( "Shell Features service is unavailable." );
         }
         try
         {
@@ -386,7 +386,7 @@
 
         if ( featuresService == null )
         {
-            this.log.error( "GShell Features service is unavailable." );
+            this.log.error( "Shell Features service is unavailable." );
             return repositories;
         }
 
@@ -411,7 +411,7 @@
 
         if ( featuresService == null )
         {
-            this.log.error( "GShell Features service is unavailable." );
+            this.log.error( "Shell Features service is unavailable." );
             return features;
         }
 
diff --git a/karaf/webconsole/gogo/pom.xml b/karaf/webconsole/gogo/pom.xml
index 96512a0..35c8059 100644
--- a/karaf/webconsole/gogo/pom.xml
+++ b/karaf/webconsole/gogo/pom.xml
@@ -61,8 +61,8 @@
       <scope>provided</scope>
     </dependency>
     <dependency>
-      <groupId>org.apache.felix.karaf.gshell</groupId>
-      <artifactId>org.apache.felix.karaf.gshell.console</artifactId>
+      <groupId>org.apache.felix.karaf.shell</groupId>
+      <artifactId>org.apache.felix.karaf.shell.console</artifactId>
     </dependency>
     <dependency>
       <groupId>org.apache.servicemix.bundles</groupId>
diff --git a/karaf/webconsole/gogo/src/main/java/org/apache/felix/karaf/webconsole/gogo/GogoPlugin.java b/karaf/webconsole/gogo/src/main/java/org/apache/felix/karaf/webconsole/gogo/GogoPlugin.java
index 4572b52..cadca38 100644
--- a/karaf/webconsole/gogo/src/main/java/org/apache/felix/karaf/webconsole/gogo/GogoPlugin.java
+++ b/karaf/webconsole/gogo/src/main/java/org/apache/felix/karaf/webconsole/gogo/GogoPlugin.java
@@ -40,9 +40,9 @@
 import javax.servlet.ServletException;
 
 import org.apache.felix.webconsole.AbstractWebConsolePlugin;
-import org.apache.felix.karaf.gshell.console.jline.Console;
-import org.apache.felix.karaf.gshell.console.Completer;
-import org.apache.felix.karaf.gshell.console.completer.AggregateCompleter;
+import org.apache.felix.karaf.shell.console.jline.Console;
+import org.apache.felix.karaf.shell.console.Completer;
+import org.apache.felix.karaf.shell.console.completer.AggregateCompleter;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.osgi.framework.BundleContext;
diff --git a/karaf/webconsole/gogo/src/main/resources/OSGI-INF/blueprint/webconsole-gogo.xml b/karaf/webconsole/gogo/src/main/resources/OSGI-INF/blueprint/webconsole-gogo.xml
index afb2570..ebf9c22 100644
--- a/karaf/webconsole/gogo/src/main/resources/OSGI-INF/blueprint/webconsole-gogo.xml
+++ b/karaf/webconsole/gogo/src/main/resources/OSGI-INF/blueprint/webconsole-gogo.xml
@@ -38,7 +38,7 @@
                             unbind-method="unregister"/>
     </reference-list>
 
-    <bean id="commandCompleter" class="org.apache.felix.karaf.gshell.console.completer.CommandsCompleter">
+    <bean id="commandCompleter" class="org.apache.felix.karaf.shell.console.completer.CommandsCompleter">
         <property name="bundleContext" ref="blueprintBundleContext" />
     </bean>
 
