@sentry/junior-linear 0.258.0 → 0.259.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -0
- package/dist/index.js +28 -0
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -19,6 +19,8 @@ export const plugins = defineJuniorPlugins([linearPlugin()]);
|
|
|
19
19
|
|
|
20
20
|
This package does not require a shared `LINEAR_API_KEY` or a custom OAuth app for the default setup. Each user connects their own Linear account the first time Junior calls a Linear MCP tool. Junior sends the authorization link privately and resumes the same Slack thread automatically after the user authorizes.
|
|
21
21
|
|
|
22
|
+
Optionally, a Junior admin can connect a Linear service account from the dashboard Admin page, or with `junior service-account connect linear`. The plugin lets that account call only Linear's read tools, such as `get_issue`, `list_issues`, and `list_comments` (`accounts.service-account.tools`). Users who have not connected Linear then use that account for those tools. Creating or updating issues and comments still asks the user to connect their own account. Anyone who can talk to Junior can read what the service account can read.
|
|
23
|
+
|
|
22
24
|
Linear operations use Linear's hosted MCP tools directly. When an issue is created through that path, Junior links it to the current conversation.
|
|
23
25
|
|
|
24
26
|
To run watches or event automations when Linear issues are created:
|
package/dist/index.js
CHANGED
|
@@ -192,6 +192,29 @@ var savedIssueSchema = z2.object({
|
|
|
192
192
|
}
|
|
193
193
|
return { ...issue, identifier: identifier.data.toUpperCase() };
|
|
194
194
|
});
|
|
195
|
+
var LINEAR_SERVICE_ACCOUNT_TOOLS = [
|
|
196
|
+
"extract_images",
|
|
197
|
+
"get_attachment",
|
|
198
|
+
"get_document",
|
|
199
|
+
"get_issue",
|
|
200
|
+
"get_issue_status",
|
|
201
|
+
"get_milestone",
|
|
202
|
+
"get_project",
|
|
203
|
+
"get_team",
|
|
204
|
+
"get_user",
|
|
205
|
+
"list_comments",
|
|
206
|
+
"list_cycles",
|
|
207
|
+
"list_documents",
|
|
208
|
+
"list_issue_labels",
|
|
209
|
+
"list_issue_statuses",
|
|
210
|
+
"list_issues",
|
|
211
|
+
"list_milestones",
|
|
212
|
+
"list_project_labels",
|
|
213
|
+
"list_projects",
|
|
214
|
+
"list_teams",
|
|
215
|
+
"list_users",
|
|
216
|
+
"search_documentation"
|
|
217
|
+
];
|
|
195
218
|
var saveIssueResultSchema = z2.union([
|
|
196
219
|
savedIssueSchema,
|
|
197
220
|
z2.object({ issue: savedIssueSchema }).transform(({ issue }) => issue)
|
|
@@ -278,6 +301,11 @@ function linearPlugin() {
|
|
|
278
301
|
normalizeIdentifier: (identifier) => identifier.toUpperCase()
|
|
279
302
|
},
|
|
280
303
|
manifest: {
|
|
304
|
+
// Optional shared read account. It has no effect until an admin
|
|
305
|
+
// connects it on the dashboard Admin page.
|
|
306
|
+
accounts: {
|
|
307
|
+
serviceAccount: { tools: [...LINEAR_SERVICE_ACCOUNT_TOOLS] }
|
|
308
|
+
},
|
|
281
309
|
configKeys: ["team", "project"],
|
|
282
310
|
description: "Linear issue tracking via hosted MCP server and issue webhooks",
|
|
283
311
|
displayName: "Linear",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sentry/junior-linear",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.259.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
],
|
|
24
24
|
"dependencies": {
|
|
25
25
|
"zod": "^4.5.4",
|
|
26
|
-
"@sentry/junior-plugin-api": "0.
|
|
26
|
+
"@sentry/junior-plugin-api": "0.259.0"
|
|
27
27
|
},
|
|
28
28
|
"devDependencies": {
|
|
29
29
|
"@oxlint/plugins": "1.79.0",
|