Skip to content

Custom Sources ​

Red Station allows you to integrate tasks from external systems.

No-Code Options ​

If you cannot modify the platform code or write Python plugins, you have two options:

1. Manual Creation (CLI) ​

You can manually replicate tasks from any system using the CLI.

bash
pilot task create --title "Fix bug in Trello Card #123" --description "Details copied from Trello..."

2. Local Task Files ​

Bulk define tasks in YAML files within your project. This is perfect for "GitOps" style task management where the source of truth is the repo itself. See Tasks > Local Task Files.


Native Integrations (Requires Code) ​

To create a live, two-way sync with a new platform (e.g., Azure DevOps, Asana), you need to implement a Custom Connector in Python.

The Connector Interface ​

All integrations implement the Connector base class.

python
from connectors.base import Connector, ConnectorRegistry

@ConnectorRegistry.register("my_source")
class MySourceConnector(Connector):
    name = "my_source"
    connector_type = "task_source"

    async def connect(self) -> None:
        # Establish API connection
        self.client = MyClient(token=self.config["token"])

    async def import_task(self, ticket_id: str) -> Task:
        # Fetch data and map to Pilot Task model
        data = await self.client.get_issue(ticket_id)
        
        return Task(
            id=ticket_id,
            source="my_source",
            intent=data.title,
            description=data.body
        )

Registering Your Source ​

  1. Place your connector file in ~/.pilot/connectors/.
  2. Add configuration to ~/.pilot/config.yaml:
yaml
integrations:
  my_source:
    enabled: true
    token: ${MY_SOURCE_TOKEN}

Usage ​

Once registered, you can use it immediately with the CLI:

bash
pilot task import TICKET-123 --source my_source

Connector Types ​

TypePurpose
task_sourceImport tasks (Jira, Linear, Asana)
vcsVersion Control (GitHub, GitLab, Bitbucket)
ciCI/CD (Jenkins, CircleCI)
notificationAlerts (Slack, Teams)

Released under the MIT License.