diff --git a/plugins/content_types/node_form_workflow.inc b/plugins/content_types/node_form_workflow.inc
new file mode 100644
index 0000000..8b304a9
--- /dev/null
+++ b/plugins/content_types/node_form_workflow.inc
@@ -0,0 +1,58 @@
+<?php
+/**
+ * @file
+ * Describes Workflow content pane.
+ */
+if (module_exists('workflow') && module_exists('workflownode')) {
+  /**
+   * Plugins are described by creating a $plugin array which will be used
+   * by the system that includes this file.
+   */
+  $plugin = array(
+    'single' => TRUE,
+    'icon' => 'icon_node_form.png',
+    'title' => t('Workflow'),
+    'description' => t('Workflow states.'),
+    'required context' => new ctools_context_required(t('Form'), 'node_form'),
+    'category' => t('Form'),
+  );
+}
+
+/**
+ * Implements pane render callback.
+ */
+function workflow_node_form_workflow_content_type_render($subtype, $conf, $panel_args, &$context) {
+  $block = new stdClass();
+  $block->module = t('node_form');
+  $block->title = t('Workflow');
+  $block->delta = 'workflow';
+
+  if (isset($context->form)) {
+    if (isset($context->form['workflow'])) {
+      $block->content['workflow'] = $context->form['workflow'];
+      // Set access to false on the original rather than removing so that
+      // vertical tabs doesn't clone it. I think this is due to references.
+      unset($context->form['workflow']);
+    }
+  }
+  else {
+    $block->content = t('Workflow.');
+  }
+
+  return $block;
+}
+
+/**
+ * Returns the administrative title for a type.
+ */
+function workflow_node_form_workflow_content_type_admin_title($subtype, $conf, $context) {
+  return t('"@s" node form workflow', array('@s' => $context->identifier));
+}
+
+/**
+ * Implements pane edit callback.
+ */
+function workflow_node_form_workflow_content_type_edit_form($form, &$form_state) {
+  // provide a blank form so we have a place to have context setting.
+  return $form;
+}
\ No newline at end of file
diff --git a/workflow.module b/workflow.module
index 3a5e87e..b115d5b 100644
--- a/workflow.module
+++ b/workflow.module
@@ -1105,4 +1105,15 @@ function _workflow_info_field($field_name, $workflow) {
   }
 
   return $field;
+}
+
+/**
+ * Implements hook_ctools_plugin_directory -
+ * This lets ctools know to scan my module for a content_type plugin file
+ * Detailed docks in ctools/ctools.api.php
+ */
+function workflow_ctools_plugin_directory($owner, $plugin_type) {
+  if ($owner == 'ctools' && !empty($plugin_type)) {
+    return "plugins/$plugin_type";
+  }
 }
\ No newline at end of file
