Чтобы заставить ссылку, программно созданную, выполняться ajax'ом достаточно навешать на неё класс 'use-ajax', но в hook_menu() это сделать невозможно потому, что:

An array of options to be passed to l() when generating a link from this menu item. Note that the options parameter has no effect on MENU_LOCAL_TASK, MENU_DEFAULT_LOCAL_TASK, and MENU_LOCAL_ACTION items.

Предположим у нас есть ссылка:

<?php
function my_module_menu(){
  $items['node/%node/execute-something']      = array(
    'title'             => 'My new action',
    'description'       => 'This action will be something perform',
    'type'              => MENU_LOCAL_ACTION,
    'context'           => MENU_CONTEXT_PAGE | MENU_CONTEXT_INLINE,
    'page callback'     => 'my_module_action_ajax_callback',
    'page arguments'    => array(1),
    'delivery callback' => 'ajax_deliver',
    /**
     * This need add class 'use-ajax', but Drupal not allow it
     */
  );
}

Просто добавляем класс:

<?php
/**
 * Implements hook_menu_local_tasks_alter().
 */
function my_module_menu_local_tasks_alter(&$data, $router_item, $root_path) {
  /**
   * Мы должны добавить класс "use-ajax" а action-ссылку здесь
   * потому, что hook_menu не позволяет нам сделать это там.
   *
   * @see "options" param on https://api.drupal.org/api/drupal/modules!system!system.api.php/function/hook_menu/7
   */
  if (isset($data['actions']['output']) && is_array($data['actions']['output'])) {
    foreach ($data['actions']['output'] as &$item) {
      if ($item['#link']['path'] == 'node/%node/execute-something') {
        $item['#link']['options'] = $item['#link']['localized_options'] = array(
          'attributes' => array(
            'class' => array('use-ajax'),
          ),
        );
      }
    }
  }
}

Другие посты