@kaiban/sdk 0.1.1 → 0.1.2
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 +376 -80
- package/dist/index.d.ts +6 -7
- package/dist/index.js +6 -7
- package/dist/lib/client.d.ts +5 -8
- package/dist/lib/client.js +5 -7
- package/dist/lib/http/HttpClient.js +5 -3
- package/dist/lib/resources/ActivitiesClient.d.ts +86 -27
- package/dist/lib/resources/ActivitiesClient.js +90 -29
- package/dist/lib/resources/AgentsClient.d.ts +68 -15
- package/dist/lib/resources/AgentsClient.js +75 -17
- package/dist/lib/resources/BoardsClient.d.ts +3 -3
- package/dist/lib/resources/BoardsClient.js +2 -2
- package/dist/lib/resources/CardsClient.d.ts +139 -12
- package/dist/lib/resources/CardsClient.js +171 -25
- package/dist/lib/resources/ExternalChannelsClient.d.ts +3 -3
- package/dist/lib/resources/ExternalChannelsClient.js +2 -2
- package/dist/lib/resources/ResourcesClient.d.ts +3 -30
- package/dist/lib/resources/ResourcesClient.js +2 -26
- package/dist/lib/resources/TeamsClient.d.ts +3 -3
- package/dist/lib/resources/TeamsClient.js +2 -2
- package/dist/types/a2a-data-parts.d.ts +2 -2
- package/dist/types/entities/activities.d.ts +56 -14
- package/dist/types/entities/activities.js +73 -1
- package/dist/types/entities/agent.d.ts +47 -5
- package/dist/types/entities/agent.js +25 -1
- package/dist/types/entities/card.d.ts +16 -26
- package/dist/types/entities/card.js +26 -1
- package/dist/types/entities/external-channel.d.ts +25 -5
- package/dist/types/entities/external-channel.js +16 -1
- package/dist/types/entities/index.d.ts +4 -5
- package/dist/types/entities/index.js +4 -5
- package/dist/types/entities/resource.d.ts +21 -12
- package/dist/types/entities/resource.js +7 -1
- package/dist/types/responses.d.ts +10 -10
- package/package.json +33 -6
- package/dist/lib/resources/BenchmarkExecutionsClient.d.ts +0 -250
- package/dist/lib/resources/BenchmarkExecutionsClient.js +0 -261
- package/dist/lib/resources/BenchmarksClient.d.ts +0 -159
- package/dist/lib/resources/BenchmarksClient.js +0 -158
- package/dist/lib/resources/SupervisorFeedbackClient.d.ts +0 -75
- package/dist/lib/resources/SupervisorFeedbackClient.js +0 -67
- package/dist/lib/resources/TeamMembersClient.d.ts +0 -66
- package/dist/lib/resources/TeamMembersClient.js +0 -75
- package/dist/lib/resources/__tests__/ActivitiesClient.test.d.ts +0 -1
- package/dist/lib/resources/__tests__/ActivitiesClient.test.js +0 -33
- package/dist/lib/resources/__tests__/AgentsClient.test.d.ts +0 -1
- package/dist/lib/resources/__tests__/AgentsClient.test.js +0 -37
- package/dist/lib/resources/__tests__/BenchmarkExecutionsClient.test.d.ts +0 -1
- package/dist/lib/resources/__tests__/BenchmarkExecutionsClient.test.js +0 -59
- package/dist/lib/resources/__tests__/BenchmarksClient.test.d.ts +0 -1
- package/dist/lib/resources/__tests__/BenchmarksClient.test.js +0 -42
- package/dist/lib/resources/__tests__/BoardsClient.test.d.ts +0 -1
- package/dist/lib/resources/__tests__/BoardsClient.test.js +0 -26
- package/dist/lib/resources/__tests__/CardsClient.test.d.ts +0 -1
- package/dist/lib/resources/__tests__/CardsClient.test.js +0 -62
- package/dist/lib/resources/__tests__/ExternalChannelsClient.test.d.ts +0 -1
- package/dist/lib/resources/__tests__/ExternalChannelsClient.test.js +0 -26
- package/dist/lib/resources/__tests__/ResourcesClient.test.d.ts +0 -1
- package/dist/lib/resources/__tests__/ResourcesClient.test.js +0 -28
- package/dist/lib/resources/__tests__/SupervisorFeedbackClient.test.d.ts +0 -1
- package/dist/lib/resources/__tests__/SupervisorFeedbackClient.test.js +0 -24
- package/dist/lib/resources/__tests__/TeamMembersClient.test.d.ts +0 -1
- package/dist/lib/resources/__tests__/TeamMembersClient.test.js +0 -26
- package/dist/lib/resources/__tests__/TeamsClient.test.d.ts +0 -1
- package/dist/lib/resources/__tests__/TeamsClient.test.js +0 -26
- package/dist/types/entities/benchmark.d.ts +0 -82
- package/dist/types/entities/benchmark.js +0 -1
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect } from 'vitest';
|
|
2
|
-
import { createKaibanClient } from '../../client';
|
|
3
|
-
import { createMockFetch, jsonOk } from '../../../test/helpers/mockFetch';
|
|
4
|
-
function makeClient(responses) {
|
|
5
|
-
const fetch = createMockFetch(responses);
|
|
6
|
-
return createKaibanClient({ tenant: 't', token: 'x', fetch });
|
|
7
|
-
}
|
|
8
|
-
describe('CardsClient', () => {
|
|
9
|
-
it('lists and iterates cards', async () => {
|
|
10
|
-
const client = makeClient([
|
|
11
|
-
jsonOk({ items: [{ id: 'c1' }], next_page_token: 'n1' }),
|
|
12
|
-
jsonOk({ items: [{ id: 'c2' }] }),
|
|
13
|
-
]);
|
|
14
|
-
const page = await client.cards.list({ page_size: 1 });
|
|
15
|
-
expect(page.items[0].id).toBe('c1');
|
|
16
|
-
const all = [];
|
|
17
|
-
for await (const c of client.cards.listAll({ page_size: 1 }))
|
|
18
|
-
all.push(c);
|
|
19
|
-
expect(all.map((x) => x.id)).toEqual(['c1', 'c2']);
|
|
20
|
-
});
|
|
21
|
-
it('gets a card', async () => {
|
|
22
|
-
const client = makeClient([
|
|
23
|
-
jsonOk({ id: 'c1', column_key: 'todo', board_id: 'b', team_id: 't' }),
|
|
24
|
-
]);
|
|
25
|
-
const card = await client.cards.get('c1');
|
|
26
|
-
expect(card.id).toBe('c1');
|
|
27
|
-
});
|
|
28
|
-
it('creates a card', async () => {
|
|
29
|
-
const client = makeClient([jsonOk({ id: 'c1' })]);
|
|
30
|
-
const card = await client.cards.create({
|
|
31
|
-
team_id: 't',
|
|
32
|
-
board_id: 'b',
|
|
33
|
-
owner_id: 'u',
|
|
34
|
-
agent_id: 'a',
|
|
35
|
-
title: 'x',
|
|
36
|
-
status: 'todo',
|
|
37
|
-
column_key: 'col',
|
|
38
|
-
priority: 'p',
|
|
39
|
-
member_ids: [],
|
|
40
|
-
});
|
|
41
|
-
expect(card.id).toBe('c1');
|
|
42
|
-
});
|
|
43
|
-
it('updates a card', async () => {
|
|
44
|
-
const client = makeClient([jsonOk({ id: 'c1', title: 'y' })]);
|
|
45
|
-
const res = await client.cards.update('c1', { title: 'y' });
|
|
46
|
-
expect(res.title).toBe('y');
|
|
47
|
-
});
|
|
48
|
-
it('deletes a card', async () => {
|
|
49
|
-
const client = makeClient([jsonOk({})]);
|
|
50
|
-
await client.cards.delete('c1');
|
|
51
|
-
expect(true).toBe(true);
|
|
52
|
-
});
|
|
53
|
-
it('moves to column and creates activity', async () => {
|
|
54
|
-
const client = makeClient([
|
|
55
|
-
jsonOk({ id: 'c1', column_key: 'todo', board_id: 'b', team_id: 't' }), // get current
|
|
56
|
-
jsonOk({ id: 'c1', column_key: 'done', board_id: 'b', team_id: 't' }), // update
|
|
57
|
-
jsonOk({}), // post activity
|
|
58
|
-
]);
|
|
59
|
-
const res = await client.cards.moveToColumn('c1', 'done');
|
|
60
|
-
expect(res.column_key).toBe('done');
|
|
61
|
-
});
|
|
62
|
-
});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect } from 'vitest';
|
|
2
|
-
import { createKaibanClient } from '../../client';
|
|
3
|
-
import { createMockFetch, jsonOk } from '../../../test/helpers/mockFetch';
|
|
4
|
-
function makeClient(responses) {
|
|
5
|
-
const fetch = createMockFetch(responses);
|
|
6
|
-
return createKaibanClient({ tenant: 't', token: 'x', fetch });
|
|
7
|
-
}
|
|
8
|
-
describe('ExternalChannelsClient', () => {
|
|
9
|
-
it('lists and iterates external channels', async () => {
|
|
10
|
-
const client = makeClient([
|
|
11
|
-
jsonOk({ items: [{ id: 'ec1' }], next_page_token: 'n1' }),
|
|
12
|
-
jsonOk({ items: [{ id: 'ec2' }] }),
|
|
13
|
-
]);
|
|
14
|
-
const page = await client.externalChannels.list({ page_size: 1 });
|
|
15
|
-
expect(page.items[0].id).toBe('ec1');
|
|
16
|
-
const all = [];
|
|
17
|
-
for await (const e of client.externalChannels.listAll({ page_size: 1 }))
|
|
18
|
-
all.push(e);
|
|
19
|
-
expect(all.map((x) => x.id)).toEqual(['ec1', 'ec2']);
|
|
20
|
-
});
|
|
21
|
-
it('gets an external channel', async () => {
|
|
22
|
-
const client = makeClient([jsonOk({ id: 'ec1' })]);
|
|
23
|
-
const ch = await client.externalChannels.get('ec1');
|
|
24
|
-
expect(ch.id).toBe('ec1');
|
|
25
|
-
});
|
|
26
|
-
});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect } from 'vitest';
|
|
2
|
-
import { createKaibanClient } from '../../client';
|
|
3
|
-
import { createMockFetch, jsonOk } from '../../../test/helpers/mockFetch';
|
|
4
|
-
function makeClient(responses) {
|
|
5
|
-
const fetch = createMockFetch(responses);
|
|
6
|
-
return createKaibanClient({ tenant: 't', token: 'x', fetch });
|
|
7
|
-
}
|
|
8
|
-
describe('ResourcesClient', () => {
|
|
9
|
-
it('lists and iterates resources', async () => {
|
|
10
|
-
const client = makeClient([
|
|
11
|
-
jsonOk({ items: [{ id: 'r1' }], next_page_token: 'n1' }),
|
|
12
|
-
jsonOk({ items: [{ id: 'r2' }] }),
|
|
13
|
-
]);
|
|
14
|
-
const page = await client.resources.list({ page_size: 1 });
|
|
15
|
-
expect(page.items[0].id).toBe('r1');
|
|
16
|
-
const all = [];
|
|
17
|
-
for await (const r of client.resources.listAll({ page_size: 1 }))
|
|
18
|
-
all.push(r);
|
|
19
|
-
expect(all.map((x) => x.id)).toEqual(['r1', 'r2']);
|
|
20
|
-
});
|
|
21
|
-
it('gets and publishes a resource', async () => {
|
|
22
|
-
const client = makeClient([jsonOk({ id: 'r1' }), jsonOk({ message: 'ok' })]);
|
|
23
|
-
const g = await client.resources.get('r1');
|
|
24
|
-
expect(g.id).toBe('r1');
|
|
25
|
-
const p = await client.resources.publish({ resource_id: 'r1', userId: 'u1' });
|
|
26
|
-
expect(p.message).toBe('ok');
|
|
27
|
-
});
|
|
28
|
-
});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect } from 'vitest';
|
|
2
|
-
import { createKaibanClient } from '../../client';
|
|
3
|
-
import { createMockFetch, jsonOk } from '../../../test/helpers/mockFetch';
|
|
4
|
-
function makeClient(responses) {
|
|
5
|
-
const fetch = createMockFetch(responses);
|
|
6
|
-
return createKaibanClient({ tenant: 't', token: 'x', fetch });
|
|
7
|
-
}
|
|
8
|
-
describe('SupervisorFeedbackClient', () => {
|
|
9
|
-
it('lists feedback by agent and iterates', async () => {
|
|
10
|
-
const client = makeClient([
|
|
11
|
-
jsonOk({ items: [{ id: 'sf1' }], next_page_token: 'n1' }),
|
|
12
|
-
jsonOk({ items: [{ id: 'sf2' }] }),
|
|
13
|
-
]);
|
|
14
|
-
const page = await client.supervisorFeedback.listByAgent({ agent_id: 'a1', page_size: 1 });
|
|
15
|
-
expect(page.items[0].id).toBe('sf1');
|
|
16
|
-
const all = [];
|
|
17
|
-
for await (const s of client.supervisorFeedback.listAllByAgent({
|
|
18
|
-
agent_id: 'a1',
|
|
19
|
-
page_size: 1,
|
|
20
|
-
}))
|
|
21
|
-
all.push(s);
|
|
22
|
-
expect(all.map((x) => x.id)).toEqual(['sf1', 'sf2']);
|
|
23
|
-
});
|
|
24
|
-
});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect } from 'vitest';
|
|
2
|
-
import { createKaibanClient } from '../../client';
|
|
3
|
-
import { createMockFetch, jsonOk } from '../../../test/helpers/mockFetch';
|
|
4
|
-
function makeClient(responses) {
|
|
5
|
-
const fetch = createMockFetch(responses);
|
|
6
|
-
return createKaibanClient({ tenant: 't', token: 'x', fetch });
|
|
7
|
-
}
|
|
8
|
-
describe('TeamMembersClient', () => {
|
|
9
|
-
it('lists and iterates team members', async () => {
|
|
10
|
-
const client = makeClient([
|
|
11
|
-
jsonOk({ items: [{ id: 'tm1' }], next_page_token: 'n1' }),
|
|
12
|
-
jsonOk({ items: [{ id: 'tm2' }] }),
|
|
13
|
-
]);
|
|
14
|
-
const page = await client.teamMembers.list({ page_size: 1 });
|
|
15
|
-
expect(page.items[0].id).toBe('tm1');
|
|
16
|
-
const all = [];
|
|
17
|
-
for await (const t of client.teamMembers.listAll({ page_size: 1 }))
|
|
18
|
-
all.push(t);
|
|
19
|
-
expect(all.map((x) => x.id)).toEqual(['tm1', 'tm2']);
|
|
20
|
-
});
|
|
21
|
-
it('gets a team member', async () => {
|
|
22
|
-
const client = makeClient([jsonOk({ id: 'tm1' })]);
|
|
23
|
-
const tm = await client.teamMembers.get('tm1');
|
|
24
|
-
expect(tm.id).toBe('tm1');
|
|
25
|
-
});
|
|
26
|
-
});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect } from 'vitest';
|
|
2
|
-
import { createKaibanClient } from '../../client';
|
|
3
|
-
import { createMockFetch, jsonOk } from '../../../test/helpers/mockFetch';
|
|
4
|
-
function makeClient(responses) {
|
|
5
|
-
const fetch = createMockFetch(responses);
|
|
6
|
-
return createKaibanClient({ tenant: 't', token: 'x', fetch });
|
|
7
|
-
}
|
|
8
|
-
describe('TeamsClient', () => {
|
|
9
|
-
it('lists and iterates teams', async () => {
|
|
10
|
-
const client = makeClient([
|
|
11
|
-
jsonOk({ items: [{ id: 't1' }], next_page_token: 'n1' }),
|
|
12
|
-
jsonOk({ items: [{ id: 't2' }] }),
|
|
13
|
-
]);
|
|
14
|
-
const page = await client.teams.list({ page_size: 1 });
|
|
15
|
-
expect(page.items[0].id).toBe('t1');
|
|
16
|
-
const all = [];
|
|
17
|
-
for await (const t of client.teams.listAll({ page_size: 1 }))
|
|
18
|
-
all.push(t);
|
|
19
|
-
expect(all.map((x) => x.id)).toEqual(['t1', 't2']);
|
|
20
|
-
});
|
|
21
|
-
it('gets a team', async () => {
|
|
22
|
-
const client = makeClient([jsonOk({ id: 't1' })]);
|
|
23
|
-
const team = await client.teams.get('t1');
|
|
24
|
-
expect(team.id).toBe('t1');
|
|
25
|
-
});
|
|
26
|
-
});
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
import { ISODate } from './shared';
|
|
2
|
-
export interface Benchmark {
|
|
3
|
-
id: string;
|
|
4
|
-
name: string;
|
|
5
|
-
description?: string;
|
|
6
|
-
created_at?: ISODate;
|
|
7
|
-
updated_at?: ISODate;
|
|
8
|
-
}
|
|
9
|
-
export interface CreateBenchmarkInput {
|
|
10
|
-
name: string;
|
|
11
|
-
description?: string;
|
|
12
|
-
}
|
|
13
|
-
export type UpdateBenchmarkInput = Partial<CreateBenchmarkInput>;
|
|
14
|
-
export interface BenchmarkExecution {
|
|
15
|
-
id: string;
|
|
16
|
-
benchmark_id: string;
|
|
17
|
-
agent_name?: string;
|
|
18
|
-
agent_id: string;
|
|
19
|
-
status: 'pending' | 'running' | 'completed' | 'failed';
|
|
20
|
-
total_tests: number;
|
|
21
|
-
completed_tests: number;
|
|
22
|
-
passed_tests: number;
|
|
23
|
-
failed_tests: number;
|
|
24
|
-
total_execution_time: number;
|
|
25
|
-
total_cost: number;
|
|
26
|
-
total_tokens: number;
|
|
27
|
-
total_input_tokens?: number;
|
|
28
|
-
total_output_tokens?: number;
|
|
29
|
-
thresholds?: Record<string, number>;
|
|
30
|
-
max_tests?: number;
|
|
31
|
-
parallel?: boolean;
|
|
32
|
-
batch_size?: number;
|
|
33
|
-
multi_turn?: boolean;
|
|
34
|
-
created_at?: ISODate;
|
|
35
|
-
updated_at?: ISODate;
|
|
36
|
-
started_at?: ISODate;
|
|
37
|
-
completed_at?: ISODate;
|
|
38
|
-
error?: string;
|
|
39
|
-
attempt?: number;
|
|
40
|
-
}
|
|
41
|
-
export interface CreateBenchmarkExecutionInput {
|
|
42
|
-
benchmark_id: string;
|
|
43
|
-
agent_id: string;
|
|
44
|
-
status?: 'pending' | 'running' | 'completed' | 'failed';
|
|
45
|
-
thresholds?: Record<string, number>;
|
|
46
|
-
max_tests?: number;
|
|
47
|
-
parallel?: boolean;
|
|
48
|
-
batch_size?: number;
|
|
49
|
-
multi_turn?: boolean;
|
|
50
|
-
}
|
|
51
|
-
export type UpdateBenchmarkExecutionInput = Partial<CreateBenchmarkExecutionInput>;
|
|
52
|
-
export interface TestCaseResult {
|
|
53
|
-
id: string;
|
|
54
|
-
execution_id: string;
|
|
55
|
-
test_index: number;
|
|
56
|
-
input: string;
|
|
57
|
-
agent_output: string;
|
|
58
|
-
execution_time: number;
|
|
59
|
-
token_usage?: {
|
|
60
|
-
input_tokens?: number;
|
|
61
|
-
output_tokens?: number;
|
|
62
|
-
total_tokens?: number;
|
|
63
|
-
cost?: number;
|
|
64
|
-
model?: string;
|
|
65
|
-
};
|
|
66
|
-
scores?: Array<{
|
|
67
|
-
scorer: string;
|
|
68
|
-
attribute?: string;
|
|
69
|
-
expected_value?: string;
|
|
70
|
-
score?: number;
|
|
71
|
-
passed?: boolean;
|
|
72
|
-
details?: Record<string, unknown>;
|
|
73
|
-
info?: Record<string, unknown>;
|
|
74
|
-
reason?: string;
|
|
75
|
-
}>;
|
|
76
|
-
passed?: boolean;
|
|
77
|
-
average_score?: number;
|
|
78
|
-
tags?: string[];
|
|
79
|
-
created_at?: ISODate;
|
|
80
|
-
}
|
|
81
|
-
export type CreateTestCaseResultInput = Omit<TestCaseResult, 'id' | 'execution_id' | 'created_at'>;
|
|
82
|
-
export type UpdateTestCaseResultInput = Partial<CreateTestCaseResultInput>;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|