paput-mcp 2.2.4 → 2.4.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 +137 -104
- package/dist/cli/index.js +6 -6
- package/dist/cli/setup-ai.js +124 -126
- package/dist/cli/setup-ai.js.map +1 -1
- package/dist/handlers/add-knowledge-candidates/handler.js +11 -9
- package/dist/handlers/add-knowledge-candidates/handler.js.map +1 -1
- package/dist/handlers/add-knowledge-candidates/tool.js +4 -4
- package/dist/handlers/add-knowledge-candidates/tool.js.map +1 -1
- package/dist/handlers/cache-status/handler.js +11 -9
- package/dist/handlers/cache-status/handler.js.map +1 -1
- package/dist/handlers/cache-status/tool.js +1 -1
- package/dist/handlers/cache-status/tool.js.map +1 -1
- package/dist/handlers/create-memo/handler.js +25 -14
- package/dist/handlers/create-memo/handler.js.map +1 -1
- package/dist/handlers/create-memo/tool.js +6 -6
- package/dist/handlers/create-memo/tool.js.map +1 -1
- package/dist/handlers/create-note/handler.js +19 -9
- package/dist/handlers/create-note/handler.js.map +1 -1
- package/dist/handlers/create-note/tool.js +4 -4
- package/dist/handlers/create-note/tool.js.map +1 -1
- package/dist/handlers/delete-skill-sheet-project/handler.js +18 -2
- package/dist/handlers/delete-skill-sheet-project/handler.js.map +1 -1
- package/dist/handlers/delete-skill-sheet-project/tool.js +2 -2
- package/dist/handlers/delete-skill-sheet-project/tool.js.map +1 -1
- package/dist/handlers/discard-pending-candidate/handler.js +9 -7
- package/dist/handlers/discard-pending-candidate/handler.js.map +1 -1
- package/dist/handlers/discard-pending-candidate/tool.js +6 -3
- package/dist/handlers/discard-pending-candidate/tool.js.map +1 -1
- package/dist/handlers/get-categories/handler.js +10 -4
- package/dist/handlers/get-categories/handler.js.map +1 -1
- package/dist/handlers/get-categories/tool.js +1 -1
- package/dist/handlers/get-categories/tool.js.map +1 -1
- package/dist/handlers/get-memo/handler.js +14 -11
- package/dist/handlers/get-memo/handler.js.map +1 -1
- package/dist/handlers/get-memo/tool.js +2 -2
- package/dist/handlers/get-memo/tool.js.map +1 -1
- package/dist/handlers/get-note/handler.js +19 -16
- package/dist/handlers/get-note/handler.js.map +1 -1
- package/dist/handlers/get-note/tool.js +2 -2
- package/dist/handlers/get-note/tool.js.map +1 -1
- package/dist/handlers/get-session-transcript/handler.js +9 -3
- package/dist/handlers/get-session-transcript/handler.js.map +1 -1
- package/dist/handlers/get-session-transcript/tool.js +4 -4
- package/dist/handlers/get-session-transcript/tool.js.map +1 -1
- package/dist/handlers/get-skill-sheet/handler.js +32 -29
- package/dist/handlers/get-skill-sheet/handler.js.map +1 -1
- package/dist/handlers/get-skill-sheet/tool.js +1 -1
- package/dist/handlers/get-skill-sheet/tool.js.map +1 -1
- package/dist/handlers/index.js +1 -11
- package/dist/handlers/index.js.map +1 -1
- package/dist/handlers/list-ideas/handler.js +9 -3
- package/dist/handlers/list-ideas/handler.js.map +1 -1
- package/dist/handlers/list-pending-candidates/handler.js +6 -4
- package/dist/handlers/list-pending-candidates/handler.js.map +1 -1
- package/dist/handlers/list-pending-candidates/tool.js +2 -2
- package/dist/handlers/list-pending-candidates/tool.js.map +1 -1
- package/dist/handlers/save-pending-candidate/handler.js +12 -9
- package/dist/handlers/save-pending-candidate/handler.js.map +1 -1
- package/dist/handlers/save-pending-candidate/tool.js +6 -6
- package/dist/handlers/save-pending-candidate/tool.js.map +1 -1
- package/dist/handlers/scan-sessions/handler.js +6 -4
- package/dist/handlers/scan-sessions/handler.js.map +1 -1
- package/dist/handlers/scan-sessions/tool.js +3 -3
- package/dist/handlers/scan-sessions/tool.js.map +1 -1
- package/dist/handlers/search-memo/handler.js +16 -8
- package/dist/handlers/search-memo/handler.js.map +1 -1
- package/dist/handlers/search-memo/tool.js +8 -8
- package/dist/handlers/search-memo/tool.js.map +1 -1
- package/dist/handlers/search-notes/handler.js +17 -9
- package/dist/handlers/search-notes/handler.js.map +1 -1
- package/dist/handlers/search-notes/tool.js +5 -5
- package/dist/handlers/search-notes/tool.js.map +1 -1
- package/dist/handlers/sync-remote-memos/handler.js +9 -5
- package/dist/handlers/sync-remote-memos/handler.js.map +1 -1
- package/dist/handlers/sync-remote-memos/tool.js +3 -3
- package/dist/handlers/sync-remote-memos/tool.js.map +1 -1
- package/dist/handlers/test-utils.js +13 -0
- package/dist/handlers/test-utils.js.map +1 -0
- package/dist/handlers/update-memo/handler.js +22 -11
- package/dist/handlers/update-memo/handler.js.map +1 -1
- package/dist/handlers/update-memo/tool.js +8 -8
- package/dist/handlers/update-memo/tool.js.map +1 -1
- package/dist/handlers/update-note/handler.js +23 -13
- package/dist/handlers/update-note/handler.js.map +1 -1
- package/dist/handlers/update-note/tool.js +5 -5
- package/dist/handlers/update-note/tool.js.map +1 -1
- package/dist/handlers/update-skill-sheet-basic-info/handler.js +26 -2
- package/dist/handlers/update-skill-sheet-basic-info/handler.js.map +1 -1
- package/dist/handlers/update-skill-sheet-basic-info/tool.js +5 -5
- package/dist/handlers/update-skill-sheet-basic-info/tool.js.map +1 -1
- package/dist/handlers/update-skill-sheet-self-pr/handler.js +14 -2
- package/dist/handlers/update-skill-sheet-self-pr/handler.js.map +1 -1
- package/dist/handlers/update-skill-sheet-self-pr/tool.js +2 -2
- package/dist/handlers/update-skill-sheet-self-pr/tool.js.map +1 -1
- package/dist/handlers/update-skill-sheet-skills/handler.js +34 -3
- package/dist/handlers/update-skill-sheet-skills/handler.js.map +1 -1
- package/dist/handlers/update-skill-sheet-skills/index.js +1 -1
- package/dist/handlers/update-skill-sheet-skills/index.js.map +1 -1
- package/dist/handlers/update-skill-sheet-skills/tool.js +9 -9
- package/dist/handlers/update-skill-sheet-skills/tool.js.map +1 -1
- package/dist/handlers/upsert-skill-sheet-project/handler.js +105 -0
- package/dist/handlers/upsert-skill-sheet-project/handler.js.map +1 -0
- package/dist/handlers/upsert-skill-sheet-project/index.js +2 -0
- package/dist/handlers/upsert-skill-sheet-project/index.js.map +1 -0
- package/dist/handlers/{update-skill-sheet-project → upsert-skill-sheet-project}/tool.js +18 -19
- package/dist/handlers/upsert-skill-sheet-project/tool.js.map +1 -0
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/schemas/tool-input.js +228 -0
- package/dist/schemas/tool-input.js.map +1 -0
- package/dist/server.js +8 -5
- package/dist/server.js.map +1 -1
- package/dist/services/api/client.js +1 -1
- package/dist/services/api/client.js.map +1 -1
- package/dist/services/api/idea.js.map +1 -1
- package/dist/services/api/index.js +0 -1
- package/dist/services/api/index.js.map +1 -1
- package/dist/services/api/memo.js +3 -17
- package/dist/services/api/memo.js.map +1 -1
- package/dist/services/api/note.js +3 -17
- package/dist/services/api/note.js.map +1 -1
- package/dist/services/api/skill-sheet.js +3 -3
- package/dist/services/api/skill-sheet.js.map +1 -1
- package/dist/services/local-cache/index.js +2 -2
- package/dist/services/local-cache/index.js.map +1 -1
- package/dist/services/session/index.js +41 -18
- package/dist/services/session/index.js.map +1 -1
- package/dist/tool.js +80 -42
- package/dist/tool.js.map +1 -1
- package/dist/types/constants.js +12 -12
- package/dist/types/constants.js.map +1 -1
- package/dist/types/index.js +0 -2
- package/dist/types/index.js.map +1 -1
- package/package.json +7 -4
- package/dist/cli/install-codex-skill.js +0 -58
- package/dist/cli/install-codex-skill.js.map +0 -1
- package/dist/handlers/add-skill-sheet-project/handler.js +0 -16
- package/dist/handlers/add-skill-sheet-project/handler.js.map +0 -1
- package/dist/handlers/add-skill-sheet-project/index.js +0 -2
- package/dist/handlers/add-skill-sheet-project/index.js.map +0 -1
- package/dist/handlers/add-skill-sheet-project/tool.js +0 -96
- package/dist/handlers/add-skill-sheet-project/tool.js.map +0 -1
- package/dist/handlers/add-skill-sheet-skill/handler.js +0 -13
- package/dist/handlers/add-skill-sheet-skill/handler.js.map +0 -1
- package/dist/handlers/add-skill-sheet-skill/index.js +0 -2
- package/dist/handlers/add-skill-sheet-skill/index.js.map +0 -1
- package/dist/handlers/add-skill-sheet-skill/tool.js +0 -41
- package/dist/handlers/add-skill-sheet-skill/tool.js.map +0 -1
- package/dist/handlers/create-memo-tool.js +0 -35
- package/dist/handlers/create-memo-tool.js.map +0 -1
- package/dist/handlers/create-memo.js +0 -72
- package/dist/handlers/create-memo.js.map +0 -1
- package/dist/handlers/create-skill-sheet/handler.js +0 -72
- package/dist/handlers/create-skill-sheet/handler.js.map +0 -1
- package/dist/handlers/create-skill-sheet/index.js +0 -3
- package/dist/handlers/create-skill-sheet/index.js.map +0 -1
- package/dist/handlers/create-skill-sheet/tool.js +0 -123
- package/dist/handlers/create-skill-sheet/tool.js.map +0 -1
- package/dist/handlers/delete-skill-sheet-skill/handler.js +0 -17
- package/dist/handlers/delete-skill-sheet-skill/handler.js.map +0 -1
- package/dist/handlers/delete-skill-sheet-skill/index.js +0 -2
- package/dist/handlers/delete-skill-sheet-skill/index.js.map +0 -1
- package/dist/handlers/delete-skill-sheet-skill/tool.js +0 -19
- package/dist/handlers/delete-skill-sheet-skill/tool.js.map +0 -1
- package/dist/handlers/get-skill-sheet-projects/handler.js +0 -14
- package/dist/handlers/get-skill-sheet-projects/handler.js.map +0 -1
- package/dist/handlers/get-skill-sheet-projects/index.js +0 -2
- package/dist/handlers/get-skill-sheet-projects/index.js.map +0 -1
- package/dist/handlers/get-skill-sheet-projects/tool.js +0 -18
- package/dist/handlers/get-skill-sheet-projects/tool.js.map +0 -1
- package/dist/handlers/get-skill-sheet-skills/handler.js +0 -13
- package/dist/handlers/get-skill-sheet-skills/handler.js.map +0 -1
- package/dist/handlers/get-skill-sheet-skills/index.js +0 -2
- package/dist/handlers/get-skill-sheet-skills/index.js.map +0 -1
- package/dist/handlers/get-skill-sheet-skills/tool.js +0 -13
- package/dist/handlers/get-skill-sheet-skills/tool.js.map +0 -1
- package/dist/handlers/search-memo-tool.js +0 -41
- package/dist/handlers/search-memo-tool.js.map +0 -1
- package/dist/handlers/search-memo.js +0 -80
- package/dist/handlers/search-memo.js.map +0 -1
- package/dist/handlers/skill-sheet-basic-info/handler.js +0 -12
- package/dist/handlers/skill-sheet-basic-info/handler.js.map +0 -1
- package/dist/handlers/skill-sheet-basic-info/index.js +0 -2
- package/dist/handlers/skill-sheet-basic-info/index.js.map +0 -1
- package/dist/handlers/skill-sheet-basic-info/tool.js +0 -30
- package/dist/handlers/skill-sheet-basic-info/tool.js.map +0 -1
- package/dist/handlers/skill-sheet-projects/handlers.js +0 -48
- package/dist/handlers/skill-sheet-projects/handlers.js.map +0 -1
- package/dist/handlers/skill-sheet-projects/index.js +0 -2
- package/dist/handlers/skill-sheet-projects/index.js.map +0 -1
- package/dist/handlers/skill-sheet-projects/tools.js +0 -228
- package/dist/handlers/skill-sheet-projects/tools.js.map +0 -1
- package/dist/handlers/skill-sheet-projects/types.js +0 -2
- package/dist/handlers/skill-sheet-projects/types.js.map +0 -1
- package/dist/handlers/skill-sheet-self-pr/handler.js +0 -12
- package/dist/handlers/skill-sheet-self-pr/handler.js.map +0 -1
- package/dist/handlers/skill-sheet-self-pr/index.js +0 -2
- package/dist/handlers/skill-sheet-self-pr/index.js.map +0 -1
- package/dist/handlers/skill-sheet-self-pr/tool.js +0 -18
- package/dist/handlers/skill-sheet-self-pr/tool.js.map +0 -1
- package/dist/handlers/skill-sheet-skills/handlers.js +0 -57
- package/dist/handlers/skill-sheet-skills/handlers.js.map +0 -1
- package/dist/handlers/skill-sheet-skills/index.js +0 -2
- package/dist/handlers/skill-sheet-skills/index.js.map +0 -1
- package/dist/handlers/skill-sheet-skills/tools.js +0 -161
- package/dist/handlers/skill-sheet-skills/tools.js.map +0 -1
- package/dist/handlers/skill-sheet-skills/types.js +0 -2
- package/dist/handlers/skill-sheet-skills/types.js.map +0 -1
- package/dist/handlers/update-skill-sheet/handler.js +0 -115
- package/dist/handlers/update-skill-sheet/handler.js.map +0 -1
- package/dist/handlers/update-skill-sheet/index.js +0 -3
- package/dist/handlers/update-skill-sheet/index.js.map +0 -1
- package/dist/handlers/update-skill-sheet/tool.js +0 -122
- package/dist/handlers/update-skill-sheet/tool.js.map +0 -1
- package/dist/handlers/update-skill-sheet-project/handler.js +0 -16
- package/dist/handlers/update-skill-sheet-project/handler.js.map +0 -1
- package/dist/handlers/update-skill-sheet-project/index.js +0 -2
- package/dist/handlers/update-skill-sheet-project/index.js.map +0 -1
- package/dist/handlers/update-skill-sheet-project/tool.js.map +0 -1
- package/dist/handlers/update-skill-sheet-skill/handler.js +0 -25
- package/dist/handlers/update-skill-sheet-skill/handler.js.map +0 -1
- package/dist/handlers/update-skill-sheet-skill/index.js +0 -2
- package/dist/handlers/update-skill-sheet-skill/index.js.map +0 -1
- package/dist/handlers/update-skill-sheet-skill/tool.js +0 -45
- package/dist/handlers/update-skill-sheet-skill/tool.js.map +0 -1
- package/dist/old-index.js +0 -210
- package/dist/old-index.js.map +0 -1
- package/dist/server/paput-server.js +0 -38
- package/dist/server/paput-server.js.map +0 -1
- package/dist/services/api/base.js +0 -35
- package/dist/services/api/base.js.map +0 -1
- package/dist/services/api-service.js +0 -83
- package/dist/services/api-service.js.map +0 -1
- package/dist/services/index.js +0 -2
- package/dist/services/index.js.map +0 -1
- package/dist/services/paput-api.js +0 -45
- package/dist/services/paput-api.js.map +0 -1
- package/dist/tools/memo.js +0 -134
- package/dist/tools/memo.js.map +0 -1
- package/dist/types/mcp.js +0 -2
- package/dist/types/mcp.js.map +0 -1
- package/dist/types/paput.js +0 -2
- package/dist/types/paput.js.map +0 -1
- package/dist/utils/config.js +0 -23
- package/dist/utils/config.js.map +0 -1
- package/dist/utils/logger.js +0 -19
- package/dist/utils/logger.js.map +0 -1
|
@@ -5,25 +5,25 @@ export async function handleUpdateNote(args, apiClient) {
|
|
|
5
5
|
content: [
|
|
6
6
|
{
|
|
7
7
|
type: 'text',
|
|
8
|
-
text: '
|
|
8
|
+
text: 'Missing parameters',
|
|
9
9
|
},
|
|
10
10
|
],
|
|
11
11
|
isError: true,
|
|
12
12
|
};
|
|
13
13
|
}
|
|
14
|
-
//
|
|
14
|
+
// Validate parameters
|
|
15
15
|
if (typeof args.id !== 'number') {
|
|
16
16
|
return {
|
|
17
17
|
content: [
|
|
18
18
|
{
|
|
19
19
|
type: 'text',
|
|
20
|
-
text: 'ID
|
|
20
|
+
text: 'ID must be a number',
|
|
21
21
|
},
|
|
22
22
|
],
|
|
23
23
|
isError: true,
|
|
24
24
|
};
|
|
25
25
|
}
|
|
26
|
-
//
|
|
26
|
+
// Require at least one update field
|
|
27
27
|
const hasUpdateFields = typeof args.title === 'string' ||
|
|
28
28
|
typeof args.is_public === 'boolean' ||
|
|
29
29
|
Array.isArray(args.memo_ids);
|
|
@@ -32,13 +32,13 @@ export async function handleUpdateNote(args, apiClient) {
|
|
|
32
32
|
content: [
|
|
33
33
|
{
|
|
34
34
|
type: 'text',
|
|
35
|
-
text: '
|
|
35
|
+
text: 'Specify at least one field to update',
|
|
36
36
|
},
|
|
37
37
|
],
|
|
38
38
|
isError: true,
|
|
39
39
|
};
|
|
40
40
|
}
|
|
41
|
-
//
|
|
41
|
+
// Build parameters
|
|
42
42
|
const params = {
|
|
43
43
|
id: args.id,
|
|
44
44
|
};
|
|
@@ -60,7 +60,7 @@ export async function handleUpdateNote(args, apiClient) {
|
|
|
60
60
|
content: [
|
|
61
61
|
{
|
|
62
62
|
type: 'text',
|
|
63
|
-
text:
|
|
63
|
+
text: `Failed to update note: ${result.error || 'Unknown error'}`,
|
|
64
64
|
},
|
|
65
65
|
],
|
|
66
66
|
isError: true,
|
|
@@ -68,27 +68,37 @@ export async function handleUpdateNote(args, apiClient) {
|
|
|
68
68
|
}
|
|
69
69
|
const updateInfo = [];
|
|
70
70
|
if (params.title)
|
|
71
|
-
updateInfo.push(
|
|
71
|
+
updateInfo.push(`Title: ${params.title}`);
|
|
72
72
|
if (params.is_public !== undefined)
|
|
73
|
-
updateInfo.push(
|
|
73
|
+
updateInfo.push(`Visibility: ${params.is_public ? 'Public' : 'Private'}`);
|
|
74
74
|
if (params.memos)
|
|
75
|
-
updateInfo.push(
|
|
75
|
+
updateInfo.push(`Memo count: ${params.memos.length}`);
|
|
76
76
|
return {
|
|
77
|
+
structuredContent: {
|
|
78
|
+
success: true,
|
|
79
|
+
action: 'updated',
|
|
80
|
+
note: {
|
|
81
|
+
id: params.id,
|
|
82
|
+
title: params.title,
|
|
83
|
+
is_public: params.is_public,
|
|
84
|
+
memos: params.memos,
|
|
85
|
+
},
|
|
86
|
+
},
|
|
77
87
|
content: [
|
|
78
88
|
{
|
|
79
89
|
type: 'text',
|
|
80
|
-
text:
|
|
90
|
+
text: `Note (ID: ) was updated successfully.\nUpdated fields:\n${updateInfo.map((info) => ` - ${info}`).join('\n')}`,
|
|
81
91
|
},
|
|
82
92
|
],
|
|
83
93
|
};
|
|
84
94
|
}
|
|
85
95
|
catch (error) {
|
|
86
|
-
const errorMessage = error instanceof Error ? error.message : '
|
|
96
|
+
const errorMessage = error instanceof Error ? error.message : 'Unknown error';
|
|
87
97
|
return {
|
|
88
98
|
content: [
|
|
89
99
|
{
|
|
90
100
|
type: 'text',
|
|
91
|
-
text:
|
|
101
|
+
text: `Error while updating note: ${errorMessage}`,
|
|
92
102
|
},
|
|
93
103
|
],
|
|
94
104
|
isError: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/handlers/update-note/handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAGxD,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,IAAyC,EACzC,SAAoB;IAEpB,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/handlers/update-note/handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,28 +2,28 @@ import { handleUpdateNote } from './handler.js';
|
|
|
2
2
|
export const updateNoteTool = {
|
|
3
3
|
definition: {
|
|
4
4
|
name: 'paput_update_note',
|
|
5
|
-
description: 'PaPut
|
|
5
|
+
description: 'Update an existing PaPut note by changing its title, visibility, or attached memo IDs.',
|
|
6
6
|
inputSchema: {
|
|
7
7
|
type: 'object',
|
|
8
8
|
properties: {
|
|
9
9
|
id: {
|
|
10
10
|
type: 'number',
|
|
11
|
-
description: '
|
|
11
|
+
description: 'Note ID',
|
|
12
12
|
},
|
|
13
13
|
title: {
|
|
14
14
|
type: 'string',
|
|
15
|
-
description: '
|
|
15
|
+
description: 'New note title',
|
|
16
16
|
},
|
|
17
17
|
is_public: {
|
|
18
18
|
type: 'boolean',
|
|
19
|
-
description: '
|
|
19
|
+
description: 'Whether to publish the note',
|
|
20
20
|
},
|
|
21
21
|
memo_ids: {
|
|
22
22
|
type: 'array',
|
|
23
23
|
items: {
|
|
24
24
|
type: 'number',
|
|
25
25
|
},
|
|
26
|
-
description: '
|
|
26
|
+
description: 'Memo IDs to include in the note',
|
|
27
27
|
},
|
|
28
28
|
},
|
|
29
29
|
required: ['id'],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool.js","sourceRoot":"","sources":["../../../src/handlers/update-note/tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,MAAM,CAAC,MAAM,cAAc,GAAgB;IACzC,UAAU,EAAE;QACV,IAAI,EAAE,mBAAmB;QACzB,WAAW,
|
|
1
|
+
{"version":3,"file":"tool.js","sourceRoot":"","sources":["../../../src/handlers/update-note/tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,MAAM,CAAC,MAAM,cAAc,GAAgB;IACzC,UAAU,EAAE;QACV,IAAI,EAAE,mBAAmB;QACzB,WAAW,EACT,wFAAwF;QAC1F,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,EAAE,EAAE;oBACF,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,SAAS;iBACvB;gBACD,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,gBAAgB;iBAC9B;gBACD,SAAS,EAAE;oBACT,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,6BAA6B;iBAC3C;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;qBACf;oBACD,WAAW,EAAE,iCAAiC;iBAC/C;aACF;YACD,QAAQ,EAAE,CAAC,IAAI,CAAC;SACjB;KACF;IACD,OAAO,EAAE,gBAAgB;CAC1B,CAAC"}
|
|
@@ -1,13 +1,37 @@
|
|
|
1
1
|
import { updateSkillSheetBasicInfo } from '../../services/api/skill-sheet.js';
|
|
2
2
|
export async function handler(params, apiClient) {
|
|
3
|
-
|
|
3
|
+
const basicInfo = parseBasicInfoParams(params);
|
|
4
|
+
await updateSkillSheetBasicInfo(apiClient, basicInfo);
|
|
4
5
|
return {
|
|
6
|
+
structuredContent: {
|
|
7
|
+
success: true,
|
|
8
|
+
action: 'updated',
|
|
9
|
+
basic_info: basicInfo,
|
|
10
|
+
},
|
|
5
11
|
content: [
|
|
6
12
|
{
|
|
7
13
|
type: 'text',
|
|
8
|
-
text: '
|
|
14
|
+
text: 'Basic information was updated',
|
|
9
15
|
},
|
|
10
16
|
],
|
|
11
17
|
};
|
|
12
18
|
}
|
|
19
|
+
function parseBasicInfoParams(params) {
|
|
20
|
+
const basicInfo = {};
|
|
21
|
+
if (!params)
|
|
22
|
+
return basicInfo;
|
|
23
|
+
if (typeof params.nearest_station === 'string') {
|
|
24
|
+
basicInfo.nearest_station = params.nearest_station;
|
|
25
|
+
}
|
|
26
|
+
if (typeof params.gender === 'number') {
|
|
27
|
+
basicInfo.gender = params.gender;
|
|
28
|
+
}
|
|
29
|
+
if (typeof params.birth_date === 'string') {
|
|
30
|
+
basicInfo.birth_date = params.birth_date;
|
|
31
|
+
}
|
|
32
|
+
if (typeof params.years_of_experience === 'number') {
|
|
33
|
+
basicInfo.years_of_experience = params.years_of_experience;
|
|
34
|
+
}
|
|
35
|
+
return basicInfo;
|
|
36
|
+
}
|
|
13
37
|
//# sourceMappingURL=handler.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/handlers/update-skill-sheet-basic-info/handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAS9E,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,MAA2C,EAC3C,SAAoB;IAEpB,MAAM,yBAAyB,CAAC,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/handlers/update-skill-sheet-basic-info/handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAS9E,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,MAA2C,EAC3C,SAAoB;IAEpB,MAAM,SAAS,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAC/C,MAAM,yBAAyB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAEtD,OAAO;QACL,iBAAiB,EAAE;YACjB,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,SAAS;YACjB,UAAU,EAAE,SAAS;SACtB;QACD,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,+BAA+B;aACtC;SACF;KACF,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAC3B,MAA2C;IAE3C,MAAM,SAAS,GAA0B,EAAE,CAAC;IAC5C,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAE9B,IAAI,OAAO,MAAM,CAAC,eAAe,KAAK,QAAQ,EAAE,CAAC;QAC/C,SAAS,CAAC,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC;IACrD,CAAC;IACD,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QACtC,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IACnC,CAAC;IACD,IAAI,OAAO,MAAM,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;QAC1C,SAAS,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;IAC3C,CAAC;IACD,IAAI,OAAO,MAAM,CAAC,mBAAmB,KAAK,QAAQ,EAAE,CAAC;QACnD,SAAS,CAAC,mBAAmB,GAAG,MAAM,CAAC,mBAAmB,CAAC;IAC7D,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -2,25 +2,25 @@ import { handler } from './handler.js';
|
|
|
2
2
|
export const updateSkillSheetBasicInfoTool = {
|
|
3
3
|
definition: {
|
|
4
4
|
name: 'paput_update_skill_sheet_basic_info',
|
|
5
|
-
description: 'PaPut
|
|
5
|
+
description: 'Update basic profile fields on the PaPut skill sheet, such as nearest station, gender, birth date, and years of experience.',
|
|
6
6
|
inputSchema: {
|
|
7
7
|
type: 'object',
|
|
8
8
|
properties: {
|
|
9
9
|
nearest_station: {
|
|
10
10
|
type: 'string',
|
|
11
|
-
description: '
|
|
11
|
+
description: 'Nearest station',
|
|
12
12
|
},
|
|
13
13
|
gender: {
|
|
14
14
|
type: 'number',
|
|
15
|
-
description: '
|
|
15
|
+
description: 'Gender: 1 male, 2 female',
|
|
16
16
|
},
|
|
17
17
|
birth_date: {
|
|
18
18
|
type: 'string',
|
|
19
|
-
description: '
|
|
19
|
+
description: 'Birth date in YYYY-MM-DD format',
|
|
20
20
|
},
|
|
21
21
|
years_of_experience: {
|
|
22
22
|
type: 'number',
|
|
23
|
-
description: '
|
|
23
|
+
description: 'Years of experience',
|
|
24
24
|
},
|
|
25
25
|
},
|
|
26
26
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool.js","sourceRoot":"","sources":["../../../src/handlers/update-skill-sheet-basic-info/tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,MAAM,CAAC,MAAM,6BAA6B,GAAgB;IACxD,UAAU,EAAE;QACV,IAAI,EAAE,qCAAqC;QAC3C,WAAW,
|
|
1
|
+
{"version":3,"file":"tool.js","sourceRoot":"","sources":["../../../src/handlers/update-skill-sheet-basic-info/tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,MAAM,CAAC,MAAM,6BAA6B,GAAgB;IACxD,UAAU,EAAE;QACV,IAAI,EAAE,qCAAqC;QAC3C,WAAW,EACT,6HAA6H;QAC/H,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,eAAe,EAAE;oBACf,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,iBAAiB;iBAC/B;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,0BAA0B;iBACxC;gBACD,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,iCAAiC;iBAC/C;gBACD,mBAAmB,EAAE;oBACnB,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,qBAAqB;iBACnC;aACF;SACF;KACF;IACD,OAAO;CACR,CAAC"}
|
|
@@ -1,13 +1,25 @@
|
|
|
1
1
|
import { updateSkillSheetSelfPr } from '../../services/api/skill-sheet.js';
|
|
2
2
|
export async function handler(params, apiClient) {
|
|
3
|
-
|
|
3
|
+
const selfPr = parseSelfPrParams(params);
|
|
4
|
+
await updateSkillSheetSelfPr(apiClient, selfPr);
|
|
4
5
|
return {
|
|
6
|
+
structuredContent: {
|
|
7
|
+
success: true,
|
|
8
|
+
action: 'updated',
|
|
9
|
+
self_pr: selfPr.self_pr || null,
|
|
10
|
+
},
|
|
5
11
|
content: [
|
|
6
12
|
{
|
|
7
13
|
type: 'text',
|
|
8
|
-
text: '
|
|
14
|
+
text: 'Self PR was updated',
|
|
9
15
|
},
|
|
10
16
|
],
|
|
11
17
|
};
|
|
12
18
|
}
|
|
19
|
+
function parseSelfPrParams(params) {
|
|
20
|
+
if (!params || typeof params.self_pr !== 'string') {
|
|
21
|
+
return {};
|
|
22
|
+
}
|
|
23
|
+
return { self_pr: params.self_pr };
|
|
24
|
+
}
|
|
13
25
|
//# sourceMappingURL=handler.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/handlers/update-skill-sheet-self-pr/handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAM3E,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,MAA2C,EAC3C,SAAoB;IAEpB,MAAM,sBAAsB,CAAC,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/handlers/update-skill-sheet-self-pr/handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAM3E,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,MAA2C,EAC3C,SAAoB;IAEpB,MAAM,MAAM,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACzC,MAAM,sBAAsB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAEhD,OAAO;QACL,iBAAiB,EAAE;YACjB,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,SAAS;YACjB,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,IAAI;SAChC;QACD,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,qBAAqB;aAC5B;SACF;KACF,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CACxB,MAA2C;IAE3C,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QAClD,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;AACrC,CAAC"}
|
|
@@ -2,13 +2,13 @@ import { handler } from './handler.js';
|
|
|
2
2
|
export const updateSkillSheetSelfPrTool = {
|
|
3
3
|
definition: {
|
|
4
4
|
name: 'paput_update_skill_sheet_self_pr',
|
|
5
|
-
description: 'PaPut
|
|
5
|
+
description: 'Update the self PR section of the PaPut skill sheet.',
|
|
6
6
|
inputSchema: {
|
|
7
7
|
type: 'object',
|
|
8
8
|
properties: {
|
|
9
9
|
self_pr: {
|
|
10
10
|
type: 'string',
|
|
11
|
-
description: '
|
|
11
|
+
description: 'Self PR text',
|
|
12
12
|
},
|
|
13
13
|
},
|
|
14
14
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool.js","sourceRoot":"","sources":["../../../src/handlers/update-skill-sheet-self-pr/tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,MAAM,CAAC,MAAM,0BAA0B,GAAgB;IACrD,UAAU,EAAE;QACV,IAAI,EAAE,kCAAkC;QACxC,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"tool.js","sourceRoot":"","sources":["../../../src/handlers/update-skill-sheet-self-pr/tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,MAAM,CAAC,MAAM,0BAA0B,GAAgB;IACrD,UAAU,EAAE;QACV,IAAI,EAAE,kCAAkC;QACxC,WAAW,EAAE,sDAAsD;QACnE,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,cAAc;iBAC5B;aACF;SACF;KACF;IACD,OAAO;CACR,CAAC"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { updateSkillSheetSkills } from '../../services/api/skill-sheet.js';
|
|
2
2
|
export async function handler(params, apiClient) {
|
|
3
|
-
const
|
|
3
|
+
const skills = parseSkills(params);
|
|
4
4
|
if (!skills) {
|
|
5
5
|
return {
|
|
6
6
|
content: [
|
|
7
7
|
{
|
|
8
8
|
type: 'text',
|
|
9
|
-
text: '
|
|
9
|
+
text: 'Skill list is required',
|
|
10
10
|
},
|
|
11
11
|
],
|
|
12
12
|
isError: true,
|
|
@@ -14,12 +14,43 @@ export async function handler(params, apiClient) {
|
|
|
14
14
|
}
|
|
15
15
|
await updateSkillSheetSkills(apiClient, { skills });
|
|
16
16
|
return {
|
|
17
|
+
structuredContent: {
|
|
18
|
+
success: true,
|
|
19
|
+
action: 'replaced',
|
|
20
|
+
skills,
|
|
21
|
+
},
|
|
17
22
|
content: [
|
|
18
23
|
{
|
|
19
24
|
type: 'text',
|
|
20
|
-
text: '
|
|
25
|
+
text: 'Skill list was updated',
|
|
21
26
|
},
|
|
22
27
|
],
|
|
23
28
|
};
|
|
24
29
|
}
|
|
30
|
+
function parseSkills(params) {
|
|
31
|
+
if (!params || !Array.isArray(params.skills))
|
|
32
|
+
return undefined;
|
|
33
|
+
const skills = params.skills.filter(isSkillSheetSkill);
|
|
34
|
+
return skills.length === params.skills.length ? skills : undefined;
|
|
35
|
+
}
|
|
36
|
+
function isSkillSheetSkill(value) {
|
|
37
|
+
return (typeof value === 'object' &&
|
|
38
|
+
value !== null &&
|
|
39
|
+
'category' in value &&
|
|
40
|
+
isSkillCategory(value.category) &&
|
|
41
|
+
'category_type' in value &&
|
|
42
|
+
typeof value.category_type === 'number' &&
|
|
43
|
+
'level' in value &&
|
|
44
|
+
typeof value.level === 'string' &&
|
|
45
|
+
'years' in value &&
|
|
46
|
+
typeof value.years === 'number');
|
|
47
|
+
}
|
|
48
|
+
function isSkillCategory(value) {
|
|
49
|
+
return (typeof value === 'object' &&
|
|
50
|
+
value !== null &&
|
|
51
|
+
'id' in value &&
|
|
52
|
+
typeof value.id === 'number' &&
|
|
53
|
+
'name' in value &&
|
|
54
|
+
typeof value.name === 'string');
|
|
55
|
+
}
|
|
25
56
|
//# sourceMappingURL=handler.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/handlers/update-skill-sheet-skills/handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAO3E,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,MAA2C,EAC3C,SAAoB;IAEpB,MAAM,
|
|
1
|
+
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/handlers/update-skill-sheet-skills/handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAO3E,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,MAA2C,EAC3C,SAAoB;IAEpB,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAEnC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,wBAAwB;iBAC/B;aACF;YACD,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,sBAAsB,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAEpD,OAAO;QACL,iBAAiB,EAAE;YACjB,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,UAAU;YAClB,MAAM;SACP;QACD,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,wBAAwB;aAC/B;SACF;KACF,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAClB,MAA2C;IAE3C,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;QAAE,OAAO,SAAS,CAAC;IAE/D,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;IACvD,OAAO,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AACrE,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAc;IACvC,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACd,UAAU,IAAI,KAAK;QACnB,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC;QAC/B,eAAe,IAAI,KAAK;QACxB,OAAO,KAAK,CAAC,aAAa,KAAK,QAAQ;QACvC,OAAO,IAAI,KAAK;QAChB,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ;QAC/B,OAAO,IAAI,KAAK;QAChB,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,CAChC,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CACtB,KAAc;IAEd,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACd,IAAI,IAAI,KAAK;QACb,OAAO,KAAK,CAAC,EAAE,KAAK,QAAQ;QAC5B,MAAM,IAAI,KAAK;QACf,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,CAC/B,CAAC;AACJ,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export {
|
|
1
|
+
export { setSkillSheetSkillsTool } from './tool.js';
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/handlers/update-skill-sheet-skills/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/handlers/update-skill-sheet-skills/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { handler } from './handler.js';
|
|
2
|
-
export const
|
|
2
|
+
export const setSkillSheetSkillsTool = {
|
|
3
3
|
definition: {
|
|
4
|
-
name: '
|
|
5
|
-
description: 'PaPut
|
|
4
|
+
name: 'paput_set_skill_sheet_skills',
|
|
5
|
+
description: 'Replace the full skill list on the PaPut skill sheet with the provided final state. Use this when the complete desired skill list is known.',
|
|
6
6
|
inputSchema: {
|
|
7
7
|
type: 'object',
|
|
8
8
|
properties: {
|
|
9
9
|
skills: {
|
|
10
10
|
type: 'array',
|
|
11
|
-
description: '
|
|
11
|
+
description: 'Skill list',
|
|
12
12
|
items: {
|
|
13
13
|
type: 'object',
|
|
14
14
|
properties: {
|
|
@@ -17,26 +17,26 @@ export const updateSkillSheetSkillsTool = {
|
|
|
17
17
|
properties: {
|
|
18
18
|
id: {
|
|
19
19
|
type: 'number',
|
|
20
|
-
description: '
|
|
20
|
+
description: 'Category ID',
|
|
21
21
|
},
|
|
22
22
|
name: {
|
|
23
23
|
type: 'string',
|
|
24
|
-
description: '
|
|
24
|
+
description: 'Category name',
|
|
25
25
|
},
|
|
26
26
|
},
|
|
27
27
|
required: ['id', 'name'],
|
|
28
28
|
},
|
|
29
29
|
category_type: {
|
|
30
30
|
type: 'number',
|
|
31
|
-
description: '
|
|
31
|
+
description: 'Category type: 1 language, 2 framework, 3 database, 4 infrastructure',
|
|
32
32
|
},
|
|
33
33
|
level: {
|
|
34
34
|
type: 'string',
|
|
35
|
-
description: '
|
|
35
|
+
description: 'Skill level: A, B, C, D, or E',
|
|
36
36
|
},
|
|
37
37
|
years: {
|
|
38
38
|
type: 'number',
|
|
39
|
-
description: '
|
|
39
|
+
description: 'Years of experience',
|
|
40
40
|
},
|
|
41
41
|
},
|
|
42
42
|
required: ['category', 'category_type', 'level', 'years'],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool.js","sourceRoot":"","sources":["../../../src/handlers/update-skill-sheet-skills/tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,MAAM,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"tool.js","sourceRoot":"","sources":["../../../src/handlers/update-skill-sheet-skills/tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,MAAM,CAAC,MAAM,uBAAuB,GAAgB;IAClD,UAAU,EAAE;QACV,IAAI,EAAE,8BAA8B;QACpC,WAAW,EACT,6IAA6I;QAC/I,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE;oBACN,IAAI,EAAE,OAAO;oBACb,WAAW,EAAE,YAAY;oBACzB,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,QAAQ,EAAE;gCACR,IAAI,EAAE,QAAQ;gCACd,UAAU,EAAE;oCACV,EAAE,EAAE;wCACF,IAAI,EAAE,QAAQ;wCACd,WAAW,EAAE,aAAa;qCAC3B;oCACD,IAAI,EAAE;wCACJ,IAAI,EAAE,QAAQ;wCACd,WAAW,EAAE,eAAe;qCAC7B;iCACF;gCACD,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC;6BACzB;4BACD,aAAa,EAAE;gCACb,IAAI,EAAE,QAAQ;gCACd,WAAW,EACT,sEAAsE;6BACzE;4BACD,KAAK,EAAE;gCACL,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,+BAA+B;6BAC7C;4BACD,KAAK,EAAE;gCACL,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,qBAAqB;6BACnC;yBACF;wBACD,QAAQ,EAAE,CAAC,UAAU,EAAE,eAAe,EAAE,OAAO,EAAE,OAAO,CAAC;qBAC1D;iBACF;aACF;YACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;SACrB;KACF;IACD,OAAO;CACR,CAAC"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import { addSkillSheetProject, searchSkillSheetProjects, updateSkillSheetProject, } from '../../services/api/skill-sheet.js';
|
|
2
|
+
export async function handler(params, apiClient) {
|
|
3
|
+
const project = parseProjectParams(params);
|
|
4
|
+
if (!project) {
|
|
5
|
+
return {
|
|
6
|
+
content: [
|
|
7
|
+
{
|
|
8
|
+
type: 'text',
|
|
9
|
+
text: 'Project information is incomplete',
|
|
10
|
+
},
|
|
11
|
+
],
|
|
12
|
+
isError: true,
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
const id = typeof project.id === 'number'
|
|
16
|
+
? project.id
|
|
17
|
+
: await findExistingProjectId(apiClient, project.title);
|
|
18
|
+
if (id) {
|
|
19
|
+
await updateSkillSheetProject(apiClient, { ...project, id });
|
|
20
|
+
return {
|
|
21
|
+
structuredContent: { success: true, action: 'updated', id, project },
|
|
22
|
+
content: [
|
|
23
|
+
{
|
|
24
|
+
type: 'text',
|
|
25
|
+
text: `Project was updated: ${id}`,
|
|
26
|
+
},
|
|
27
|
+
],
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
const response = await addSkillSheetProject(apiClient, project);
|
|
31
|
+
return {
|
|
32
|
+
structuredContent: { success: true, action: 'created', project: response },
|
|
33
|
+
content: [
|
|
34
|
+
{
|
|
35
|
+
type: 'text',
|
|
36
|
+
text: `Project was added: ${response.title} (ID: ${response.id})`,
|
|
37
|
+
},
|
|
38
|
+
],
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
async function findExistingProjectId(apiClient, title) {
|
|
42
|
+
if (typeof title !== 'string' || title.trim().length === 0) {
|
|
43
|
+
return undefined;
|
|
44
|
+
}
|
|
45
|
+
const projects = await searchSkillSheetProjects(apiClient, title.trim());
|
|
46
|
+
const exactMatch = projects.find((project) => project.title === title.trim());
|
|
47
|
+
return exactMatch?.id;
|
|
48
|
+
}
|
|
49
|
+
function parseProjectParams(params) {
|
|
50
|
+
if (!params)
|
|
51
|
+
return undefined;
|
|
52
|
+
if (typeof params.type !== 'number' ||
|
|
53
|
+
typeof params.title !== 'string' ||
|
|
54
|
+
typeof params.start_period !== 'string' ||
|
|
55
|
+
typeof params.description !== 'string' ||
|
|
56
|
+
typeof params.role !== 'string' ||
|
|
57
|
+
typeof params.scale !== 'string' ||
|
|
58
|
+
!Array.isArray(params.technologies) ||
|
|
59
|
+
!Array.isArray(params.processes) ||
|
|
60
|
+
!Array.isArray(params.memos)) {
|
|
61
|
+
return undefined;
|
|
62
|
+
}
|
|
63
|
+
const technologies = params.technologies.filter(isTechnology);
|
|
64
|
+
const processes = params.processes.filter((process) => typeof process === 'number');
|
|
65
|
+
const memos = params.memos.filter(isSkillSheetMemo);
|
|
66
|
+
if (technologies.length !== params.technologies.length ||
|
|
67
|
+
processes.length !== params.processes.length ||
|
|
68
|
+
memos.length !== params.memos.length) {
|
|
69
|
+
return undefined;
|
|
70
|
+
}
|
|
71
|
+
const project = {
|
|
72
|
+
type: params.type,
|
|
73
|
+
title: params.title,
|
|
74
|
+
start_period: params.start_period,
|
|
75
|
+
description: params.description,
|
|
76
|
+
role: params.role,
|
|
77
|
+
scale: params.scale,
|
|
78
|
+
technologies,
|
|
79
|
+
processes,
|
|
80
|
+
memos,
|
|
81
|
+
};
|
|
82
|
+
if (typeof params.id === 'number') {
|
|
83
|
+
project.id = params.id;
|
|
84
|
+
}
|
|
85
|
+
if (typeof params.end_period === 'string' || params.end_period === null) {
|
|
86
|
+
project.end_period = params.end_period;
|
|
87
|
+
}
|
|
88
|
+
return project;
|
|
89
|
+
}
|
|
90
|
+
function isTechnology(value) {
|
|
91
|
+
return (typeof value === 'object' &&
|
|
92
|
+
value !== null &&
|
|
93
|
+
'name' in value &&
|
|
94
|
+
typeof value.name === 'string' &&
|
|
95
|
+
(!('id' in value) || typeof value.id === 'number'));
|
|
96
|
+
}
|
|
97
|
+
function isSkillSheetMemo(value) {
|
|
98
|
+
return (typeof value === 'object' &&
|
|
99
|
+
value !== null &&
|
|
100
|
+
'id' in value &&
|
|
101
|
+
typeof value.id === 'number' &&
|
|
102
|
+
'title' in value &&
|
|
103
|
+
typeof value.title === 'string');
|
|
104
|
+
}
|
|
105
|
+
//# sourceMappingURL=handler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/handlers/upsert-skill-sheet-project/handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/handlers/upsert-skill-sheet-project/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,WAAW,CAAC"}
|