{"id":40559893,"url":"https://github.com/hco/integration_linear","last_synced_at":"2026-01-21T00:40:23.376Z","repository":{"id":324595198,"uuid":"1097278104","full_name":"hco/integration_linear","owner":"hco","description":"Home Assistant integration for the awesome Linear.app issue tracker","archived":false,"fork":false,"pushed_at":"2025-11-16T19:34:05.000Z","size":72,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-11-16T21:18:00.467Z","etag":null,"topics":["home-assistant","issue-tracker","linear-app","linear-issue-tracking"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hco.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-11-15T21:38:46.000Z","updated_at":"2025-11-16T19:34:09.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/hco/integration_linear","commit_stats":null,"previous_names":["hco/integration_linear"],"tags_count":null,"template":false,"template_full_name":"ludeeus/integration_blueprint","purl":"pkg:github/hco/integration_linear","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hco%2Fintegration_linear","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hco%2Fintegration_linear/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hco%2Fintegration_linear/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hco%2Fintegration_linear/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hco","download_url":"https://codeload.github.com/hco/integration_linear/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hco%2Fintegration_linear/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28619987,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-20T23:49:58.628Z","status":"ssl_error","status_checked_at":"2026-01-20T23:47:29.996Z","response_time":117,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["home-assistant","issue-tracker","linear-app","linear-issue-tracking"],"created_at":"2026-01-21T00:40:22.821Z","updated_at":"2026-01-21T00:40:23.370Z","avatar_url":"https://github.com/hco.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003e **Note:** This integration is still a work in progress. Features and configuration options may change in future updates. There might be bugs :D\r\n\r\n# Linear Integration for Home Assistant\r\n\r\n[![hacs_badge](https://img.shields.io/badge/HACS-Custom-orange.svg)](https://github.com/hacs/integration)\r\n\r\nIntegrate your Linear workspace with Home Assistant to manage your project issues directly from your smart home dashboard. This integration creates Todo list entities for each Linear team, allowing you to view, create, update, and complete issues without leaving Home Assistant.\r\n\r\n## Features\r\n\r\n- **Todo List Integration**: View your Linear issues as todo items in Home Assistant's native Todo list interface\r\n- **Multi-Team Support**: Configure multiple Linear teams, each appearing as a separate todo list entity\r\n- **Create Issues**: Add new issues directly from Home Assistant\r\n- **Update Issues**: Modify issue titles, descriptions, and due dates\r\n- **Status Management**: Mark issues as completed or move them back to todo status- **Configurable Workflow States**: Map your Linear workflow states to todo/completed/removed statuses\r\n\r\n## Installation\r\n\r\nThis integration is not yet available in the HACS default store, but you can install it as a custom repository.\r\n\r\n### Prerequisites\r\n\r\n- Home Assistant 2025.11 or later\r\n- [HACS](https://hacs.xyz/) installed and configured\r\n\r\n### Installing via HACS (Custom Repository)\r\n\r\n1. **Open HACS** in your Home Assistant interface\r\n2. Click on the **three dots** (⋮) in the top right corner\r\n3. Select **\"Custom repositories\"**\r\n4. Enter the following information:\r\n   - **Repository**: `https://github.com/hco/integration_linear`\r\n   - **Category**: Select **\"Integration\"**\r\n5. Click **\"ADD\"**\r\n6. Return to the HACS **Integrations** page\r\n7. Search for **\"Linear Integration\"**\r\n8. Click on the integration and then click **\"Download\"**\r\n9. **Restart Home Assistant** to activate the integration\r\n\r\n### Manual Installation\r\n\r\nIf you prefer to install manually:\r\n\r\n1. Download the latest release from the [releases page](https://github.com/hco/integration_linear/releases)\r\n2. Extract the `custom_components/integration_linear` folder\r\n3. Copy it to your Home Assistant `custom_components` directory\r\n4. Restart Home Assistant\r\n\r\n## Configuration\r\n\r\n### Getting Your Linear API Token\r\n\r\n1. Go to [Linear Settings](https://linear.app/settings/api)\r\n2. Navigate to **API** section\r\n3. Click **\"Create API key\"**\r\n4. Give it a name (e.g., \"Home Assistant\")\r\n5. Copy the generated API token (you'll only see it once!)\r\n\r\n### Setting Up the Integration\r\n\r\n1. In Home Assistant, go to **Settings** → **Devices \u0026 Services**\r\n2. Click **\"Add Integration\"**\r\n3. Search for **\"Linear Integration\"** and select it\r\n4. Enter your **Linear API Token**\r\n5. Select the **teams** you want to integrate\r\n6. For each team, configure:\r\n   - **Todo States**: Select one or more workflow states that represent active/incomplete issues\r\n   - **Completed State**: Select the workflow state that represents completed issues (e.g., \"Done\")\r\n   - **Removed State**: Select the workflow state for removed/cancelled issues (e.g., \"Cancelled\")\r\n7. Click **\"Submit\"** to complete the setup\r\n\r\nThe integration will automatically create a todo list entity for each configured team (e.g., `todo.linear_engineering`, `todo.linear_design`).\r\n\r\n## Usage\r\n\r\n### Viewing Issues\r\n\r\nOnce configured, you can view your Linear issues in Home Assistant:\r\n\r\n- **Lovelace UI**: Add a Todo card to your dashboard\r\n- **Entities**: Each team appears as a `todo.linear_\u003cteam_name\u003e` entity\r\n- **States**: Issues in \"todo states\" appear as incomplete, issues in \"completed state\" appear as completed\r\n\r\n### Creating Issues\r\n\r\nYou can create new Linear issues directly from Home Assistant:\r\n\r\n1. Open the todo list entity for your team\r\n2. Click **\"Add item\"** or use the create todo service\r\n3. Enter the issue title\r\n4. Optionally add a description and due date\r\n5. The issue will be created in Linear with the first configured \"todo state\"\r\n\r\n### Updating Issues\r\n\r\n- **Mark as Complete**: Check off an issue to move it to the \"completed state\" in Linear\r\n- **Update Description**: Edit the description directly in the todo list\r\n- **Change Due Date**: Update the due date, and it will sync to Linear\r\n- **Reopen**: Uncheck a completed issue to move it back to the first \"todo state\"\r\n\r\n### Creating Issues with Advanced Features\r\n\r\nThe integration provides a custom service `integration_linear.create_issue` that offers more features than the standard todo creation:\r\n\r\n```yaml\r\nservice: integration_linear.create_issue\r\ndata:\r\n  team_identifier: \"ENG\" # Team identifier (e.g., \"ENG\", \"DESIGN\") - easier than team_id\r\n  title: \"Fix critical bug\"\r\n  description: \"This is a critical bug that needs immediate attention\"\r\n  assignee_email: \"user@example.com\" # Assigns to user with this email (must exist)\r\n  label_names: # Adds labels by name (must exist)\r\n    - \"bug\"\r\n    - \"critical\"\r\n  state_name_or_id: \"In Progress\" # Sets status by name or ID\r\n  due_date: \"2025-12-31\" # Optional due date (YYYY-MM-DD format)\r\n```\r\n\r\n**Service Parameters:**\r\n\r\n- `team_id` or `team_identifier` (one required):\r\n  - `team_id`: The Linear team ID (UUID) where the issue will be created\r\n  - `team_identifier`: The team identifier/prefix (e.g., \"ENG\", \"DESIGN\") - much easier to use!\r\n- `title` (required): The issue title\r\n- `assignee_email` (optional): Email address of the user to assign. If the user doesn't exist, the service will throw an error.\r\n- `label_names` (optional): List of label names to add to the issue. All labels must exist for the team, otherwise an error is thrown.\r\n- `state_name_or_id` (optional): The workflow state name or ID to set. If the state doesn't exist, an error is thrown.\r\n- `description` (optional): Issue description\r\n- `due_date` (optional): Due date in YYYY-MM-DD format\r\n- `entry_id` (optional): Config entry ID if you have multiple Linear integrations configured\r\n\r\n**Note:** You can use either `team_id` or `team_identifier`, but not both. The `team_identifier` is the team's issue prefix (like \"ENG\" for Engineering), which is much easier to remember than a UUID.\r\n\r\n### Automations\r\n\r\nYou can use the todo entities in automations:\r\n\r\n```yaml\r\nautomation:\r\n  - alias: \"Notify when Linear issue is completed\"\r\n    trigger:\r\n      - platform: state\r\n        entity_id: todo.linear_engineering\r\n        to: \"completed\"\r\n    action:\r\n      - service: notify.mobile_app\r\n        data:\r\n          message: \"Linear issue completed!\"\r\n\r\n  - alias: \"Create Linear issue from sensor\"\r\n    trigger:\r\n      - platform: numeric_state\r\n        entity_id: sensor.temperature\r\n        above: 30\r\n    action:\r\n      - service: integration_linear.create_issue\r\n        data:\r\n          team_identifier: \"ENG\" # Use team identifier instead of team_id\r\n          title: \"Temperature too high\"\r\n          description: \"Temperature sensor {{ states('sensor.temperature') }}°C exceeded threshold\"\r\n          assignee_email: \"admin@example.com\"\r\n          label_names:\r\n            - \"alert\"\r\n            - \"temperature\"\r\n          state_name_or_id: \"Todo\"\r\n```\r\n\r\n## Troubleshooting\r\n\r\n### Integration Not Appearing\r\n\r\n- Ensure you've restarted Home Assistant after installation\r\n- Check that the integration is in `custom_components/integration_linear`\r\n- Verify HACS installation if using custom repository method\r\n\r\n### Authentication Errors\r\n\r\n- Verify your API token is correct and hasn't expired\r\n- Check that the token has the necessary permissions in Linear\r\n- Try creating a new API token if issues persist\r\n\r\n### Issues Not Syncing\r\n\r\n- Check the Home Assistant logs for any error messages\r\n- Verify your team and state configurations are correct\r\n- Ensure the selected states exist in your Linear workspace\r\n\r\n### No Issues Showing\r\n\r\n- Verify that you have issues in the selected \"todo states\" or \"completed state\"\r\n- Check that the team selection includes teams with issues\r\n- Review the coordinator update interval in the integration settings\r\n\r\n## Support\r\n\r\n- **Issues**: Report bugs or request features on [GitHub Issues](https://github.com/hco/integration_linear/issues)\r\n- **Documentation**: Check the [GitHub repository](https://github.com/hco/integration_linear) for more details\r\n\r\n## Contributing\r\n\r\nContributions are welcome! Please see [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.\r\n\r\n## License\r\n\r\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhco%2Fintegration_linear","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhco%2Fintegration_linear","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhco%2Fintegration_linear/lists"}