@elizaos/plugin-linear 1.2.13 → 2.0.0-alpha.1
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 +40 -331
- package/dist/index.js +2199 -2048
- package/dist/index.js.map +27 -1
- package/package.json +22 -23
- package/dist/index.d.ts +0 -89
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@elizaos/plugin-linear",
|
|
3
|
-
"version": "
|
|
4
|
-
"description": "Linear integration plugin for ElizaOS",
|
|
3
|
+
"version": "2.0.0-alpha.1",
|
|
4
|
+
"description": "Linear integration plugin for ElizaOS (TypeScript)",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/index.js",
|
|
7
7
|
"types": "dist/index.d.ts",
|
|
@@ -22,15 +22,17 @@
|
|
|
22
22
|
"access": "public"
|
|
23
23
|
},
|
|
24
24
|
"scripts": {
|
|
25
|
-
"
|
|
26
|
-
"dev": "tsup --watch",
|
|
25
|
+
"dev": "bun --hot build.ts",
|
|
27
26
|
"test": "vitest",
|
|
28
27
|
"test:watch": "vitest --watch",
|
|
29
|
-
"
|
|
30
|
-
"
|
|
31
|
-
"format": "
|
|
32
|
-
"
|
|
33
|
-
"
|
|
28
|
+
"lint": "bunx @biomejs/biome check --write --unsafe .",
|
|
29
|
+
"format": "bunx @biomejs/biome format --write .",
|
|
30
|
+
"format:check": "bunx @biomejs/biome format .",
|
|
31
|
+
"clean": "rm -rf dist .turbo node_modules .turbo-tsconfig.json tsconfig.tsbuildinfo",
|
|
32
|
+
"lint:check": "bunx @biomejs/biome check .",
|
|
33
|
+
"build": "bun run build.ts",
|
|
34
|
+
"build:ts": "bun run build.ts",
|
|
35
|
+
"typecheck": "tsc --noEmit"
|
|
34
36
|
},
|
|
35
37
|
"repository": {
|
|
36
38
|
"type": "git",
|
|
@@ -40,8 +42,9 @@
|
|
|
40
42
|
"elizaos",
|
|
41
43
|
"plugin",
|
|
42
44
|
"linear",
|
|
43
|
-
"
|
|
44
|
-
"
|
|
45
|
+
"typescript",
|
|
46
|
+
"project-management",
|
|
47
|
+
"issue-tracking"
|
|
45
48
|
],
|
|
46
49
|
"author": "ElizaOS Contributors",
|
|
47
50
|
"license": "MIT",
|
|
@@ -51,36 +54,32 @@
|
|
|
51
54
|
"homepage": "https://github.com/elizaos/eliza#readme",
|
|
52
55
|
"dependencies": {
|
|
53
56
|
"@linear/sdk": "^51.0.0",
|
|
54
|
-
"@elizaos/core": "
|
|
57
|
+
"@elizaos/core": "workspace:*"
|
|
55
58
|
},
|
|
56
59
|
"devDependencies": {
|
|
57
|
-
"@types/node": "^
|
|
58
|
-
"
|
|
59
|
-
"
|
|
60
|
-
"
|
|
61
|
-
"prettier": "^3.2.5",
|
|
62
|
-
"tsup": "^8.0.2",
|
|
63
|
-
"typescript": "^5.4.5",
|
|
64
|
-
"vitest": "^1.5.0"
|
|
60
|
+
"@types/node": "^25.0.3",
|
|
61
|
+
"typescript": "^5.9.3",
|
|
62
|
+
"vitest": "^4.0.0",
|
|
63
|
+
"@biomejs/biome": "^2.3.11"
|
|
65
64
|
},
|
|
66
65
|
"agentConfig": {
|
|
67
66
|
"pluginType": "elizaos:plugin:1.0.0",
|
|
68
67
|
"pluginParameters": {
|
|
69
68
|
"LINEAR_API_KEY": {
|
|
70
69
|
"type": "string",
|
|
71
|
-
"description": "Linear API key for authentication
|
|
70
|
+
"description": "Linear API key for authentication",
|
|
72
71
|
"required": true,
|
|
73
72
|
"sensitive": true
|
|
74
73
|
},
|
|
75
74
|
"LINEAR_WORKSPACE_ID": {
|
|
76
75
|
"type": "string",
|
|
77
|
-
"description": "Linear workspace ID
|
|
76
|
+
"description": "Linear workspace ID",
|
|
78
77
|
"required": false,
|
|
79
78
|
"sensitive": false
|
|
80
79
|
},
|
|
81
80
|
"LINEAR_DEFAULT_TEAM_KEY": {
|
|
82
81
|
"type": "string",
|
|
83
|
-
"description": "Default team key for new issues
|
|
82
|
+
"description": "Default team key for new issues",
|
|
84
83
|
"required": false,
|
|
85
84
|
"sensitive": false
|
|
86
85
|
}
|
package/dist/index.d.ts
DELETED
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
import { Service, IAgentRuntime, Plugin } from '@elizaos/core';
|
|
2
|
-
import { Team, Issue, Comment, Project, User, IssueLabel, WorkflowState } from '@linear/sdk';
|
|
3
|
-
|
|
4
|
-
interface LinearConfig {
|
|
5
|
-
LINEAR_API_KEY: string;
|
|
6
|
-
LINEAR_WORKSPACE_ID?: string;
|
|
7
|
-
}
|
|
8
|
-
interface LinearActivityItem {
|
|
9
|
-
id: string;
|
|
10
|
-
timestamp: string;
|
|
11
|
-
action: string;
|
|
12
|
-
resource_type: 'issue' | 'project' | 'comment' | 'label' | 'user' | 'team';
|
|
13
|
-
resource_id: string;
|
|
14
|
-
details: Record<string, any>;
|
|
15
|
-
success: boolean;
|
|
16
|
-
error?: string;
|
|
17
|
-
}
|
|
18
|
-
interface LinearIssueInput {
|
|
19
|
-
title: string;
|
|
20
|
-
description?: string;
|
|
21
|
-
teamId: string;
|
|
22
|
-
priority?: number;
|
|
23
|
-
assigneeId?: string;
|
|
24
|
-
labelIds?: string[];
|
|
25
|
-
projectId?: string;
|
|
26
|
-
stateId?: string;
|
|
27
|
-
estimate?: number;
|
|
28
|
-
dueDate?: Date;
|
|
29
|
-
}
|
|
30
|
-
interface LinearCommentInput {
|
|
31
|
-
body: string;
|
|
32
|
-
issueId: string;
|
|
33
|
-
}
|
|
34
|
-
interface LinearSearchFilters {
|
|
35
|
-
state?: string[];
|
|
36
|
-
assignee?: string[];
|
|
37
|
-
label?: string[];
|
|
38
|
-
project?: string;
|
|
39
|
-
team?: string;
|
|
40
|
-
priority?: number[];
|
|
41
|
-
query?: string;
|
|
42
|
-
limit?: number;
|
|
43
|
-
}
|
|
44
|
-
declare class LinearAPIError extends Error {
|
|
45
|
-
status?: number | undefined;
|
|
46
|
-
response?: any | undefined;
|
|
47
|
-
constructor(message: string, status?: number | undefined, response?: any | undefined);
|
|
48
|
-
}
|
|
49
|
-
declare class LinearAuthenticationError extends LinearAPIError {
|
|
50
|
-
constructor(message: string);
|
|
51
|
-
}
|
|
52
|
-
declare class LinearRateLimitError extends LinearAPIError {
|
|
53
|
-
resetTime: number;
|
|
54
|
-
constructor(message: string, resetTime: number);
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
declare class LinearService extends Service {
|
|
58
|
-
static serviceType: string;
|
|
59
|
-
capabilityDescription: string;
|
|
60
|
-
private client;
|
|
61
|
-
private activityLog;
|
|
62
|
-
private linearConfig;
|
|
63
|
-
private workspaceId?;
|
|
64
|
-
constructor(runtime?: IAgentRuntime);
|
|
65
|
-
static start(runtime: IAgentRuntime): Promise<LinearService>;
|
|
66
|
-
stop(): Promise<void>;
|
|
67
|
-
private validateConnection;
|
|
68
|
-
private logActivity;
|
|
69
|
-
getActivityLog(limit?: number, filter?: Partial<LinearActivityItem>): LinearActivityItem[];
|
|
70
|
-
clearActivityLog(): void;
|
|
71
|
-
getTeams(): Promise<Team[]>;
|
|
72
|
-
getTeam(teamId: string): Promise<Team>;
|
|
73
|
-
createIssue(input: LinearIssueInput): Promise<Issue>;
|
|
74
|
-
getIssue(issueId: string): Promise<Issue>;
|
|
75
|
-
updateIssue(issueId: string, updates: Partial<LinearIssueInput>): Promise<Issue>;
|
|
76
|
-
deleteIssue(issueId: string): Promise<void>;
|
|
77
|
-
searchIssues(filters: LinearSearchFilters): Promise<Issue[]>;
|
|
78
|
-
createComment(input: LinearCommentInput): Promise<Comment>;
|
|
79
|
-
getProjects(teamId?: string): Promise<Project[]>;
|
|
80
|
-
getProject(projectId: string): Promise<Project>;
|
|
81
|
-
getUsers(): Promise<User[]>;
|
|
82
|
-
getCurrentUser(): Promise<User>;
|
|
83
|
-
getLabels(teamId?: string): Promise<IssueLabel[]>;
|
|
84
|
-
getWorkflowStates(teamId: string): Promise<WorkflowState[]>;
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
declare const linearPlugin: Plugin;
|
|
88
|
-
|
|
89
|
-
export { LinearAPIError, type LinearActivityItem, LinearAuthenticationError, type LinearCommentInput, type LinearConfig, type LinearIssueInput, LinearRateLimitError, type LinearSearchFilters, LinearService, linearPlugin };
|