How to get links of translated node edit page in the secondary tabs
Add a derivative for each language:

/mymodule/src/Plugin/Derivative/TranslatedNodeTabDeriver.php

&lt;?php

namespace Drupal\mymodule\Plugin\Derivative;

use Drupal\Component\Plugin\Derivative\DeriverBase;
use Drupal\Core\StringTranslation\StringTranslationTrait;

class TranslatedNodeTabDeriver extends DeriverBase {

  use StringTranslationTrait;

  /**
   * {@inheritdoc}
   */
  public function getDerivativeDefinitions($base_plugin_definition) {
    $this-&gt;derivatives = [];
    foreach (\Drupal::languageManager()-&gt;getLanguages() as $language) {
      $lang_id = $language-&gt;getId();
      $this-&gt;derivatives[$lang_id] = $base_plugin_definition;
      $this-&gt;derivatives[$lang_id]['title'] = $this-&gt;t('Translate @language', ['@language' =&gt; $language-&gt;getName()]);
    }
    return $this-&gt;derivatives;
  }

}


and then you can get the language id with $this-&gt;getDerivativeId() in the plugin class:

/mymodule/src/Plugin/Menu/TranslatedNodeTab.php

&lt;?php

namespace Drupal\mymodule\Plugin\Menu;

use Drupal\Core\Menu\LocalTaskDefault;
use Drupal\Core\Routing\RouteMatchInterface;

class TranslatedNodeTab extends LocalTaskDefault {

  /**
   * {@inheritdoc}
   */
  public function getOptions(RouteMatchInterface $route_match) {
    $options = parent::getOptions($route_match);
    $options['language'] = \Drupal::languageManager()-&gt;getLanguage($this-&gt;getDerivativeId());
    return $options;
  }

}


/mymodule/mymodule.links.task.yml

translated_node_tabs:
  class: Drupal\mymodule\Plugin\Menu\TranslatedNodeTab
  deriver: Drupal\mymodule\Plugin\Derivative\TranslatedNodeTabDeriver
  base_route: entity.node.canonical
  route_name: entity.node.edit_form