codingbuddy 2.4.0 → 2.4.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 +70 -0
- package/dist/src/cli/init/prompts/tech-stack-prompt.d.ts +1 -0
- package/dist/src/cli/init/prompts/tech-stack-prompt.js +1 -0
- package/dist/src/cli/init/prompts/tech-stack-prompt.js.map +1 -1
- package/dist/src/cli/init/prompts/test-strategy-prompt.d.ts +1 -0
- package/dist/src/cli/init/prompts/test-strategy-prompt.js +9 -7
- package/dist/src/cli/init/prompts/test-strategy-prompt.js.map +1 -1
- package/dist/src/keyword/patterns/agent.patterns.d.ts +2 -0
- package/dist/src/keyword/patterns/agent.patterns.js +91 -0
- package/dist/src/keyword/patterns/agent.patterns.js.map +1 -0
- package/dist/src/keyword/patterns/ai-ml.patterns.d.ts +2 -0
- package/dist/src/keyword/patterns/ai-ml.patterns.js +81 -0
- package/dist/src/keyword/patterns/ai-ml.patterns.js.map +1 -0
- package/dist/src/keyword/patterns/backend.patterns.d.ts +2 -0
- package/dist/src/keyword/patterns/backend.patterns.js +91 -0
- package/dist/src/keyword/patterns/backend.patterns.js.map +1 -0
- package/dist/src/keyword/patterns/context.patterns.d.ts +2 -0
- package/dist/src/keyword/patterns/context.patterns.js +82 -0
- package/dist/src/keyword/patterns/context.patterns.js.map +1 -0
- package/dist/src/keyword/patterns/data.patterns.d.ts +2 -0
- package/dist/src/keyword/patterns/data.patterns.js +47 -0
- package/dist/src/keyword/patterns/data.patterns.js.map +1 -0
- package/dist/src/keyword/patterns/explicit.patterns.d.ts +1 -0
- package/dist/src/keyword/patterns/explicit.patterns.js +10 -0
- package/dist/src/keyword/patterns/explicit.patterns.js.map +1 -0
- package/dist/src/keyword/patterns/index.d.ts +12 -0
- package/dist/src/keyword/patterns/index.js +26 -0
- package/dist/src/keyword/patterns/index.js.map +1 -0
- package/dist/src/keyword/patterns/intent-pattern-checks.d.ts +2 -0
- package/dist/src/keyword/patterns/intent-pattern-checks.js +48 -0
- package/dist/src/keyword/patterns/intent-pattern-checks.js.map +1 -0
- package/dist/src/keyword/patterns/intent-patterns.types.d.ts +15 -0
- package/dist/src/keyword/patterns/intent-patterns.types.js +3 -0
- package/dist/src/keyword/patterns/intent-patterns.types.js.map +1 -0
- package/dist/src/keyword/patterns/meta-discussion.patterns.d.ts +1 -0
- package/dist/src/keyword/patterns/meta-discussion.patterns.js +11 -0
- package/dist/src/keyword/patterns/meta-discussion.patterns.js.map +1 -0
- package/dist/src/keyword/patterns/mobile.patterns.d.ts +2 -0
- package/dist/src/keyword/patterns/mobile.patterns.js +35 -0
- package/dist/src/keyword/patterns/mobile.patterns.js.map +1 -0
- package/dist/src/keyword/patterns/platform.patterns.d.ts +2 -0
- package/dist/src/keyword/patterns/platform.patterns.js +72 -0
- package/dist/src/keyword/patterns/platform.patterns.js.map +1 -0
- package/dist/src/keyword/patterns/tooling.patterns.d.ts +2 -0
- package/dist/src/keyword/patterns/tooling.patterns.js +78 -0
- package/dist/src/keyword/patterns/tooling.patterns.js.map +1 -0
- package/dist/src/keyword/primary-agent-resolver.d.ts +6 -32
- package/dist/src/keyword/primary-agent-resolver.js +24 -738
- package/dist/src/keyword/primary-agent-resolver.js.map +1 -1
- package/dist/src/keyword/strategies/__tests__/strategy-test.utils.d.ts +8 -0
- package/dist/src/keyword/strategies/__tests__/strategy-test.utils.js +45 -0
- package/dist/src/keyword/strategies/__tests__/strategy-test.utils.js.map +1 -0
- package/dist/src/keyword/strategies/act-agent.strategy.d.ts +10 -0
- package/dist/src/keyword/strategies/act-agent.strategy.js +125 -0
- package/dist/src/keyword/strategies/act-agent.strategy.js.map +1 -0
- package/dist/src/keyword/strategies/eval-agent.strategy.d.ts +5 -0
- package/dist/src/keyword/strategies/eval-agent.strategy.js +19 -0
- package/dist/src/keyword/strategies/eval-agent.strategy.js.map +1 -0
- package/dist/src/keyword/strategies/index.d.ts +4 -0
- package/dist/src/keyword/strategies/index.js +10 -0
- package/dist/src/keyword/strategies/index.js.map +1 -0
- package/dist/src/keyword/strategies/plan-agent.strategy.d.ts +6 -0
- package/dist/src/keyword/strategies/plan-agent.strategy.js +68 -0
- package/dist/src/keyword/strategies/plan-agent.strategy.js.map +1 -0
- package/dist/src/keyword/strategies/resolution-strategy.interface.d.ts +20 -0
- package/dist/src/keyword/strategies/resolution-strategy.interface.js +3 -0
- package/dist/src/keyword/strategies/resolution-strategy.interface.js.map +1 -0
- package/dist/src/mcp/handlers/config.handler.js +2 -1
- package/dist/src/mcp/handlers/config.handler.js.map +1 -1
- package/dist/src/mcp/mcp.service.d.ts +4 -0
- package/dist/src/mcp/mcp.service.js +35 -2
- package/dist/src/mcp/mcp.service.js.map +1 -1
- package/dist/src/session/__tests__/session-test.utils.d.ts +5 -0
- package/dist/src/session/__tests__/session-test.utils.js +59 -0
- package/dist/src/session/__tests__/session-test.utils.js.map +1 -0
- package/dist/src/session/session.cache.d.ts +19 -0
- package/dist/src/session/session.cache.js +83 -0
- package/dist/src/session/session.cache.js.map +1 -0
- package/dist/src/session/session.parser.d.ts +22 -0
- package/dist/src/session/session.parser.js +273 -0
- package/dist/src/session/session.parser.js.map +1 -0
- package/dist/src/session/session.serializer.d.ts +6 -0
- package/dist/src/session/session.serializer.js +84 -0
- package/dist/src/session/session.serializer.js.map +1 -0
- package/dist/src/session/session.service.d.ts +1 -12
- package/dist/src/session/session.service.js +19 -403
- package/dist/src/session/session.service.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.META_AGENT_DISCUSSION_PATTERNS = exports.CONTEXT_PATTERNS = exports.INTENT_PATTERN_CHECKS = exports.TOOLING_INTENT_PATTERNS = exports.PLATFORM_INTENT_PATTERNS = exports.MOBILE_INTENT_PATTERNS = exports.DATA_INTENT_PATTERNS = exports.BACKEND_INTENT_PATTERNS = exports.AI_ML_INTENT_PATTERNS = exports.AGENT_INTENT_PATTERNS = exports.EXPLICIT_PATTERNS = void 0;
|
|
4
|
+
var explicit_patterns_1 = require("./explicit.patterns");
|
|
5
|
+
Object.defineProperty(exports, "EXPLICIT_PATTERNS", { enumerable: true, get: function () { return explicit_patterns_1.EXPLICIT_PATTERNS; } });
|
|
6
|
+
var agent_patterns_1 = require("./agent.patterns");
|
|
7
|
+
Object.defineProperty(exports, "AGENT_INTENT_PATTERNS", { enumerable: true, get: function () { return agent_patterns_1.AGENT_INTENT_PATTERNS; } });
|
|
8
|
+
var ai_ml_patterns_1 = require("./ai-ml.patterns");
|
|
9
|
+
Object.defineProperty(exports, "AI_ML_INTENT_PATTERNS", { enumerable: true, get: function () { return ai_ml_patterns_1.AI_ML_INTENT_PATTERNS; } });
|
|
10
|
+
var backend_patterns_1 = require("./backend.patterns");
|
|
11
|
+
Object.defineProperty(exports, "BACKEND_INTENT_PATTERNS", { enumerable: true, get: function () { return backend_patterns_1.BACKEND_INTENT_PATTERNS; } });
|
|
12
|
+
var data_patterns_1 = require("./data.patterns");
|
|
13
|
+
Object.defineProperty(exports, "DATA_INTENT_PATTERNS", { enumerable: true, get: function () { return data_patterns_1.DATA_INTENT_PATTERNS; } });
|
|
14
|
+
var mobile_patterns_1 = require("./mobile.patterns");
|
|
15
|
+
Object.defineProperty(exports, "MOBILE_INTENT_PATTERNS", { enumerable: true, get: function () { return mobile_patterns_1.MOBILE_INTENT_PATTERNS; } });
|
|
16
|
+
var platform_patterns_1 = require("./platform.patterns");
|
|
17
|
+
Object.defineProperty(exports, "PLATFORM_INTENT_PATTERNS", { enumerable: true, get: function () { return platform_patterns_1.PLATFORM_INTENT_PATTERNS; } });
|
|
18
|
+
var tooling_patterns_1 = require("./tooling.patterns");
|
|
19
|
+
Object.defineProperty(exports, "TOOLING_INTENT_PATTERNS", { enumerable: true, get: function () { return tooling_patterns_1.TOOLING_INTENT_PATTERNS; } });
|
|
20
|
+
var intent_pattern_checks_1 = require("./intent-pattern-checks");
|
|
21
|
+
Object.defineProperty(exports, "INTENT_PATTERN_CHECKS", { enumerable: true, get: function () { return intent_pattern_checks_1.INTENT_PATTERN_CHECKS; } });
|
|
22
|
+
var context_patterns_1 = require("./context.patterns");
|
|
23
|
+
Object.defineProperty(exports, "CONTEXT_PATTERNS", { enumerable: true, get: function () { return context_patterns_1.CONTEXT_PATTERNS; } });
|
|
24
|
+
var meta_discussion_patterns_1 = require("./meta-discussion.patterns");
|
|
25
|
+
Object.defineProperty(exports, "META_AGENT_DISCUSSION_PATTERNS", { enumerable: true, get: function () { return meta_discussion_patterns_1.META_AGENT_DISCUSSION_PATTERNS; } });
|
|
26
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/keyword/patterns/index.ts"],"names":[],"mappings":";;;AAqBA,yDAAwD;AAA/C,sHAAA,iBAAiB,OAAA;AAG1B,mDAAyD;AAAhD,uHAAA,qBAAqB,OAAA;AAC9B,mDAAyD;AAAhD,uHAAA,qBAAqB,OAAA;AAC9B,uDAA6D;AAApD,2HAAA,uBAAuB,OAAA;AAChC,iDAAuD;AAA9C,qHAAA,oBAAoB,OAAA;AAC7B,qDAA2D;AAAlD,yHAAA,sBAAsB,OAAA;AAC/B,yDAA+D;AAAtD,6HAAA,wBAAwB,OAAA;AACjC,uDAA6D;AAApD,2HAAA,uBAAuB,OAAA;AAGhC,iEAAgE;AAAvD,8HAAA,qBAAqB,OAAA;AAG9B,uDAAsD;AAA7C,oHAAA,gBAAgB,OAAA;AAGzB,uEAA4E;AAAnE,0IAAA,8BAA8B,OAAA"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.INTENT_PATTERN_CHECKS = void 0;
|
|
4
|
+
const agent_patterns_1 = require("./agent.patterns");
|
|
5
|
+
const tooling_patterns_1 = require("./tooling.patterns");
|
|
6
|
+
const platform_patterns_1 = require("./platform.patterns");
|
|
7
|
+
const data_patterns_1 = require("./data.patterns");
|
|
8
|
+
const ai_ml_patterns_1 = require("./ai-ml.patterns");
|
|
9
|
+
const backend_patterns_1 = require("./backend.patterns");
|
|
10
|
+
const mobile_patterns_1 = require("./mobile.patterns");
|
|
11
|
+
exports.INTENT_PATTERN_CHECKS = [
|
|
12
|
+
{
|
|
13
|
+
agent: 'agent-architect',
|
|
14
|
+
patterns: agent_patterns_1.AGENT_INTENT_PATTERNS,
|
|
15
|
+
category: 'Agent',
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
agent: 'tooling-engineer',
|
|
19
|
+
patterns: tooling_patterns_1.TOOLING_INTENT_PATTERNS,
|
|
20
|
+
category: 'Tooling',
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
agent: 'platform-engineer',
|
|
24
|
+
patterns: platform_patterns_1.PLATFORM_INTENT_PATTERNS,
|
|
25
|
+
category: 'Platform',
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
agent: 'data-engineer',
|
|
29
|
+
patterns: data_patterns_1.DATA_INTENT_PATTERNS,
|
|
30
|
+
category: 'Data',
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
agent: 'ai-ml-engineer',
|
|
34
|
+
patterns: ai_ml_patterns_1.AI_ML_INTENT_PATTERNS,
|
|
35
|
+
category: 'AI/ML',
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
agent: 'backend-developer',
|
|
39
|
+
patterns: backend_patterns_1.BACKEND_INTENT_PATTERNS,
|
|
40
|
+
category: 'Backend',
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
agent: 'mobile-developer',
|
|
44
|
+
patterns: mobile_patterns_1.MOBILE_INTENT_PATTERNS,
|
|
45
|
+
category: 'Mobile',
|
|
46
|
+
},
|
|
47
|
+
];
|
|
48
|
+
//# sourceMappingURL=intent-pattern-checks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"intent-pattern-checks.js","sourceRoot":"","sources":["../../../../src/keyword/patterns/intent-pattern-checks.ts"],"names":[],"mappings":";;;AAiBA,qDAAyD;AACzD,yDAA6D;AAC7D,2DAA+D;AAC/D,mDAAuD;AACvD,qDAAyD;AACzD,yDAA6D;AAC7D,uDAA2D;AAE9C,QAAA,qBAAqB,GAAsC;IAEtE;QACE,KAAK,EAAE,iBAAiB;QACxB,QAAQ,EAAE,sCAAqB;QAC/B,QAAQ,EAAE,OAAO;KAClB;IACD;QACE,KAAK,EAAE,kBAAkB;QACzB,QAAQ,EAAE,0CAAuB;QACjC,QAAQ,EAAE,SAAS;KACpB;IACD;QACE,KAAK,EAAE,mBAAmB;QAC1B,QAAQ,EAAE,4CAAwB;QAClC,QAAQ,EAAE,UAAU;KACrB;IACD;QACE,KAAK,EAAE,eAAe;QACtB,QAAQ,EAAE,oCAAoB;QAC9B,QAAQ,EAAE,MAAM;KACjB;IACD;QACE,KAAK,EAAE,gBAAgB;QACvB,QAAQ,EAAE,sCAAqB;QAC/B,QAAQ,EAAE,OAAO;KAClB;IACD;QACE,KAAK,EAAE,mBAAmB;QAC1B,QAAQ,EAAE,0CAAuB;QACjC,QAAQ,EAAE,SAAS;KACpB;IAED;QACE,KAAK,EAAE,kBAAkB;QACzB,QAAQ,EAAE,wCAAsB;QAChC,QAAQ,EAAE,QAAQ;KACnB;CACF,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export type IntentPattern = {
|
|
2
|
+
readonly pattern: RegExp;
|
|
3
|
+
readonly confidence: number;
|
|
4
|
+
readonly description: string;
|
|
5
|
+
};
|
|
6
|
+
export type IntentPatternCheck = {
|
|
7
|
+
readonly agent: string;
|
|
8
|
+
readonly patterns: ReadonlyArray<IntentPattern>;
|
|
9
|
+
readonly category: string;
|
|
10
|
+
};
|
|
11
|
+
export type ContextPattern = {
|
|
12
|
+
readonly pattern: RegExp;
|
|
13
|
+
readonly agent: string;
|
|
14
|
+
readonly confidence: number;
|
|
15
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"intent-patterns.types.js","sourceRoot":"","sources":["../../../../src/keyword/patterns/intent-patterns.types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const META_AGENT_DISCUSSION_PATTERNS: ReadonlyArray<RegExp>;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.META_AGENT_DISCUSSION_PATTERNS = void 0;
|
|
4
|
+
exports.META_AGENT_DISCUSSION_PATTERNS = [
|
|
5
|
+
/(?:mobile|frontend|backend|data|platform|devops|ai-?ml).?(?:developer|engineer)\s*(?:가|이|를|은|는|로|에|의|와|과)/i,
|
|
6
|
+
/(?:agent|에이전트)\s*(?:매칭|호출|선택|resolution|matching|selection|추천|recommendation)/i,
|
|
7
|
+
/primary\s*agent\s*(?:선택|매칭|시스템|system)/i,
|
|
8
|
+
/(?:agent|에이전트)\s*(?:활성화|activation|호출|invocation|파이프라인|pipeline)/i,
|
|
9
|
+
/(?:agent|에이전트).{0,20}(?:버그|bug|문제|issue|오류|error|잘못|wrong)/i,
|
|
10
|
+
];
|
|
11
|
+
//# sourceMappingURL=meta-discussion.patterns.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"meta-discussion.patterns.js","sourceRoot":"","sources":["../../../../src/keyword/patterns/meta-discussion.patterns.ts"],"names":[],"mappings":";;;AAca,QAAA,8BAA8B,GAA0B;IAEnE,4GAA4G;IAE5G,gFAAgF;IAIhF,yCAAyC;IAEzC,mEAAmE;IAEnE,6DAA6D;CAC9D,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MOBILE_INTENT_PATTERNS = void 0;
|
|
4
|
+
exports.MOBILE_INTENT_PATTERNS = [
|
|
5
|
+
{
|
|
6
|
+
pattern: /react.?native/i,
|
|
7
|
+
confidence: 0.95,
|
|
8
|
+
description: 'React Native',
|
|
9
|
+
},
|
|
10
|
+
{ pattern: /flutter/i, confidence: 0.95, description: 'Flutter' },
|
|
11
|
+
{ pattern: /expo/i, confidence: 0.9, description: 'Expo' },
|
|
12
|
+
{ pattern: /swiftui/i, confidence: 0.95, description: 'SwiftUI' },
|
|
13
|
+
{
|
|
14
|
+
pattern: /jetpack\s*compose/i,
|
|
15
|
+
confidence: 0.95,
|
|
16
|
+
description: 'Jetpack Compose',
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
pattern: /모바일\s*(앱|개발|화면)/i,
|
|
20
|
+
confidence: 0.9,
|
|
21
|
+
description: 'Korean: mobile app',
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
pattern: /mobile\s*(app|develop|screen)/i,
|
|
25
|
+
confidence: 0.9,
|
|
26
|
+
description: 'Mobile app',
|
|
27
|
+
},
|
|
28
|
+
{ pattern: /iOS\s*(앱|개발)/i, confidence: 0.9, description: 'iOS app' },
|
|
29
|
+
{
|
|
30
|
+
pattern: /android\s*(앱|개발)/i,
|
|
31
|
+
confidence: 0.9,
|
|
32
|
+
description: 'Android app',
|
|
33
|
+
},
|
|
34
|
+
];
|
|
35
|
+
//# sourceMappingURL=mobile.patterns.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mobile.patterns.js","sourceRoot":"","sources":["../../../../src/keyword/patterns/mobile.patterns.ts"],"names":[],"mappings":";;;AAmBa,QAAA,sBAAsB,GAAiC;IAElE;QACE,OAAO,EAAE,gBAAgB;QACzB,UAAU,EAAE,IAAI;QAChB,WAAW,EAAE,cAAc;KAC5B;IACD,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE;IACjE,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE;IAC1D,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE;IACjE;QACE,OAAO,EAAE,oBAAoB;QAC7B,UAAU,EAAE,IAAI;QAChB,WAAW,EAAE,iBAAiB;KAC/B;IAED;QACE,OAAO,EAAE,kBAAkB;QAC3B,UAAU,EAAE,GAAG;QACf,WAAW,EAAE,oBAAoB;KAClC;IACD;QACE,OAAO,EAAE,gCAAgC;QACzC,UAAU,EAAE,GAAG;QACf,WAAW,EAAE,YAAY;KAC1B;IACD,EAAE,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,GAAG,EAAE,WAAW,EAAE,SAAS,EAAE;IACrE;QACE,OAAO,EAAE,mBAAmB;QAC5B,UAAU,EAAE,GAAG;QACf,WAAW,EAAE,aAAa;KAC3B;CACF,CAAC"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PLATFORM_INTENT_PATTERNS = void 0;
|
|
4
|
+
exports.PLATFORM_INTENT_PATTERNS = [
|
|
5
|
+
{ pattern: /terraform/i, confidence: 0.95, description: 'Terraform' },
|
|
6
|
+
{ pattern: /pulumi/i, confidence: 0.95, description: 'Pulumi' },
|
|
7
|
+
{ pattern: /aws.?cdk/i, confidence: 0.95, description: 'AWS CDK' },
|
|
8
|
+
{ pattern: /helm/i, confidence: 0.95, description: 'Helm chart' },
|
|
9
|
+
{
|
|
10
|
+
pattern: /argocd|argo.?cd/i,
|
|
11
|
+
confidence: 0.95,
|
|
12
|
+
description: 'Argo CD',
|
|
13
|
+
},
|
|
14
|
+
{ pattern: /flux.?cd|fluxcd/i, confidence: 0.95, description: 'Flux CD' },
|
|
15
|
+
{
|
|
16
|
+
pattern: /kubernetes|k8s/i,
|
|
17
|
+
confidence: 0.9,
|
|
18
|
+
description: 'Kubernetes',
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
pattern: /kustomize|kustomization/i,
|
|
22
|
+
confidence: 0.95,
|
|
23
|
+
description: 'Kustomize',
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
pattern: /kubectl|kubeconfig/i,
|
|
27
|
+
confidence: 0.9,
|
|
28
|
+
description: 'Kubectl',
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
pattern: /k8s.*manifest|manifest.*k8s|kubernetes.*manifest/i,
|
|
32
|
+
confidence: 0.9,
|
|
33
|
+
description: 'K8s manifest',
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
pattern: /EKS|GKE|AKS/i,
|
|
37
|
+
confidence: 0.9,
|
|
38
|
+
description: 'Managed Kubernetes',
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
pattern: /IRSA|workload.?identity/i,
|
|
42
|
+
confidence: 0.9,
|
|
43
|
+
description: 'Workload identity',
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
pattern: /인프라\s*(코드|설정|관리|자동화)/i,
|
|
47
|
+
confidence: 0.85,
|
|
48
|
+
description: 'Korean: infrastructure',
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
pattern: /infrastructure.?as.?code|IaC/i,
|
|
52
|
+
confidence: 0.9,
|
|
53
|
+
description: 'Infrastructure as Code',
|
|
54
|
+
},
|
|
55
|
+
{ pattern: /gitops/i, confidence: 0.9, description: 'GitOps' },
|
|
56
|
+
{
|
|
57
|
+
pattern: /multi.?cloud|hybrid.?cloud/i,
|
|
58
|
+
confidence: 0.85,
|
|
59
|
+
description: 'Multi-cloud',
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
pattern: /finops|cloud.?cost|비용\s*최적화/i,
|
|
63
|
+
confidence: 0.85,
|
|
64
|
+
description: 'Cloud cost optimization',
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
pattern: /disaster.?recovery|RTO|RPO/i,
|
|
68
|
+
confidence: 0.85,
|
|
69
|
+
description: 'Disaster recovery',
|
|
70
|
+
},
|
|
71
|
+
];
|
|
72
|
+
//# sourceMappingURL=platform.patterns.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"platform.patterns.js","sourceRoot":"","sources":["../../../../src/keyword/patterns/platform.patterns.ts"],"names":[],"mappings":";;;AAmCa,QAAA,wBAAwB,GAAiC;IAEpE,EAAE,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE;IACrE,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE;IAC/D,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE;IAClE,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,YAAY,EAAE;IACjE;QACE,OAAO,EAAE,kBAAkB;QAC3B,UAAU,EAAE,IAAI;QAChB,WAAW,EAAE,SAAS;KACvB;IACD,EAAE,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE;IAEzE;QACE,OAAO,EAAE,iBAAiB;QAC1B,UAAU,EAAE,GAAG;QACf,WAAW,EAAE,YAAY;KAC1B;IACD;QACE,OAAO,EAAE,0BAA0B;QACnC,UAAU,EAAE,IAAI;QAChB,WAAW,EAAE,WAAW;KACzB;IACD;QACE,OAAO,EAAE,qBAAqB;QAC9B,UAAU,EAAE,GAAG;QACf,WAAW,EAAE,SAAS;KACvB;IACD;QACE,OAAO,EAAE,mDAAmD;QAC5D,UAAU,EAAE,GAAG;QACf,WAAW,EAAE,cAAc;KAC5B;IAED;QACE,OAAO,EAAE,cAAc;QACvB,UAAU,EAAE,GAAG;QACf,WAAW,EAAE,oBAAoB;KAClC;IACD;QACE,OAAO,EAAE,0BAA0B;QACnC,UAAU,EAAE,GAAG;QACf,WAAW,EAAE,mBAAmB;KACjC;IACD;QACE,OAAO,EAAE,uBAAuB;QAChC,UAAU,EAAE,IAAI;QAChB,WAAW,EAAE,wBAAwB;KACtC;IACD;QACE,OAAO,EAAE,+BAA+B;QACxC,UAAU,EAAE,GAAG;QACf,WAAW,EAAE,wBAAwB;KACtC;IAED,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,EAAE,WAAW,EAAE,QAAQ,EAAE;IAE9D;QACE,OAAO,EAAE,6BAA6B;QACtC,UAAU,EAAE,IAAI;QAChB,WAAW,EAAE,aAAa;KAC3B;IAED;QACE,OAAO,EAAE,8BAA8B;QACvC,UAAU,EAAE,IAAI;QAChB,WAAW,EAAE,yBAAyB;KACvC;IAED;QACE,OAAO,EAAE,6BAA6B;QACtC,UAAU,EAAE,IAAI;QAChB,WAAW,EAAE,mBAAmB;KACjC;CACF,CAAC"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TOOLING_INTENT_PATTERNS = void 0;
|
|
4
|
+
exports.TOOLING_INTENT_PATTERNS = [
|
|
5
|
+
{
|
|
6
|
+
pattern: /codingbuddy\.config/i,
|
|
7
|
+
confidence: 0.98,
|
|
8
|
+
description: 'CodingBuddy config',
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
pattern: /tsconfig.*\.json/i,
|
|
12
|
+
confidence: 0.95,
|
|
13
|
+
description: 'TypeScript config',
|
|
14
|
+
},
|
|
15
|
+
{ pattern: /eslint/i, confidence: 0.95, description: 'ESLint config' },
|
|
16
|
+
{
|
|
17
|
+
pattern: /prettier/i,
|
|
18
|
+
confidence: 0.95,
|
|
19
|
+
description: 'Prettier config',
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
pattern: /stylelint/i,
|
|
23
|
+
confidence: 0.95,
|
|
24
|
+
description: 'Stylelint config',
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
pattern: /vite\.config/i,
|
|
28
|
+
confidence: 0.95,
|
|
29
|
+
description: 'Vite config',
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
pattern: /next\.config/i,
|
|
33
|
+
confidence: 0.95,
|
|
34
|
+
description: 'Next.js config',
|
|
35
|
+
},
|
|
36
|
+
{ pattern: /webpack/i, confidence: 0.9, description: 'Webpack config' },
|
|
37
|
+
{
|
|
38
|
+
pattern: /rollup\.config/i,
|
|
39
|
+
confidence: 0.9,
|
|
40
|
+
description: 'Rollup config',
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
pattern: /package\.json/i,
|
|
44
|
+
confidence: 0.9,
|
|
45
|
+
description: 'Package.json',
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
pattern: /yarn\.lock|pnpm-lock|package-lock/i,
|
|
49
|
+
confidence: 0.85,
|
|
50
|
+
description: 'Lock files',
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
pattern: /\.config\.(js|ts|mjs|cjs|json)$/i,
|
|
54
|
+
confidence: 0.85,
|
|
55
|
+
description: 'Config file extension',
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
pattern: /설정\s*(파일|변경|수정)/i,
|
|
59
|
+
confidence: 0.85,
|
|
60
|
+
description: 'Korean: config file',
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
pattern: /빌드\s*(설정|도구|환경)/i,
|
|
64
|
+
confidence: 0.85,
|
|
65
|
+
description: 'Korean: build config',
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
pattern: /패키지\s*(관리|설치|업데이트|의존성)/i,
|
|
69
|
+
confidence: 0.85,
|
|
70
|
+
description: 'Korean: package management',
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
pattern: /린터|린트\s*설정/i,
|
|
74
|
+
confidence: 0.85,
|
|
75
|
+
description: 'Korean: linter config',
|
|
76
|
+
},
|
|
77
|
+
];
|
|
78
|
+
//# sourceMappingURL=tooling.patterns.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tooling.patterns.js","sourceRoot":"","sources":["../../../../src/keyword/patterns/tooling.patterns.ts"],"names":[],"mappings":";;;AAiCa,QAAA,uBAAuB,GAAiC;IAEnE;QACE,OAAO,EAAE,sBAAsB;QAC/B,UAAU,EAAE,IAAI;QAChB,WAAW,EAAE,oBAAoB;KAClC;IACD;QACE,OAAO,EAAE,mBAAmB;QAC5B,UAAU,EAAE,IAAI;QAChB,WAAW,EAAE,mBAAmB;KACjC;IACD,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,EAAE;IACtE;QACE,OAAO,EAAE,WAAW;QACpB,UAAU,EAAE,IAAI;QAChB,WAAW,EAAE,iBAAiB;KAC/B;IACD;QACE,OAAO,EAAE,YAAY;QACrB,UAAU,EAAE,IAAI;QAChB,WAAW,EAAE,kBAAkB;KAChC;IAED;QACE,OAAO,EAAE,eAAe;QACxB,UAAU,EAAE,IAAI;QAChB,WAAW,EAAE,aAAa;KAC3B;IACD;QACE,OAAO,EAAE,eAAe;QACxB,UAAU,EAAE,IAAI;QAChB,WAAW,EAAE,gBAAgB;KAC9B;IACD,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,EAAE,WAAW,EAAE,gBAAgB,EAAE;IACvE;QACE,OAAO,EAAE,iBAAiB;QAC1B,UAAU,EAAE,GAAG;QACf,WAAW,EAAE,eAAe;KAC7B;IAED;QACE,OAAO,EAAE,gBAAgB;QACzB,UAAU,EAAE,GAAG;QACf,WAAW,EAAE,cAAc;KAC5B;IACD;QACE,OAAO,EAAE,oCAAoC;QAC7C,UAAU,EAAE,IAAI;QAChB,WAAW,EAAE,YAAY;KAC1B;IAED;QACE,OAAO,EAAE,kCAAkC;QAC3C,UAAU,EAAE,IAAI;QAChB,WAAW,EAAE,uBAAuB;KACrC;IAED;QACE,OAAO,EAAE,kBAAkB;QAC3B,UAAU,EAAE,IAAI;QAChB,WAAW,EAAE,qBAAqB;KACnC;IACD;QACE,OAAO,EAAE,kBAAkB;QAC3B,UAAU,EAAE,IAAI;QAChB,WAAW,EAAE,sBAAsB;KACpC;IACD;QACE,OAAO,EAAE,yBAAyB;QAClC,UAAU,EAAE,IAAI;QAChB,WAAW,EAAE,4BAA4B;KAC1C;IACD;QACE,OAAO,EAAE,aAAa;QACtB,UAAU,EAAE,IAAI;QAChB,WAAW,EAAE,uBAAuB;KACrC;CACF,CAAC"}
|
|
@@ -1,42 +1,16 @@
|
|
|
1
1
|
import { type Mode, type PrimaryAgentResolutionResult, type ResolutionContext } from './keyword.types';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
excludeAgents?: string[];
|
|
5
|
-
}
|
|
6
|
-
type GetProjectConfigFn = () => Promise<ProjectConfig | null>;
|
|
7
|
-
type ListPrimaryAgentsFn = () => Promise<string[]>;
|
|
8
|
-
export type IntentPattern = {
|
|
9
|
-
readonly pattern: RegExp;
|
|
10
|
-
readonly confidence: number;
|
|
11
|
-
readonly description: string;
|
|
12
|
-
};
|
|
2
|
+
import { type GetProjectConfigFn, type ListPrimaryAgentsFn } from './strategies';
|
|
3
|
+
export type { IntentPattern } from './patterns';
|
|
13
4
|
export declare class PrimaryAgentResolver {
|
|
14
5
|
private readonly getProjectConfig;
|
|
15
6
|
private readonly listPrimaryAgents;
|
|
16
7
|
private readonly logger;
|
|
17
|
-
private
|
|
18
|
-
private
|
|
19
|
-
private
|
|
20
|
-
private static readonly TOOLING_INTENT_PATTERNS;
|
|
21
|
-
private static readonly PLATFORM_INTENT_PATTERNS;
|
|
22
|
-
private static readonly AI_ML_INTENT_PATTERNS;
|
|
23
|
-
private static readonly BACKEND_INTENT_PATTERNS;
|
|
24
|
-
private static readonly AGENT_INTENT_PATTERNS;
|
|
25
|
-
private static readonly INTENT_PATTERN_CHECKS;
|
|
26
|
-
private static readonly META_AGENT_DISCUSSION_PATTERNS;
|
|
27
|
-
private static readonly CONTEXT_PATTERNS;
|
|
8
|
+
private readonly evalStrategy;
|
|
9
|
+
private readonly planStrategy;
|
|
10
|
+
private readonly actStrategy;
|
|
28
11
|
constructor(getProjectConfig: GetProjectConfigFn, listPrimaryAgents: ListPrimaryAgentsFn);
|
|
29
12
|
resolve(mode: Mode, prompt: string, context?: ResolutionContext, recommendedActAgent?: string): Promise<PrimaryAgentResolutionResult>;
|
|
13
|
+
private getStrategy;
|
|
30
14
|
private filterExcludedAgents;
|
|
31
|
-
private resolvePlanAgent;
|
|
32
|
-
private choosePlanAgent;
|
|
33
|
-
private resolveActAgent;
|
|
34
|
-
private inferFromIntentPatterns;
|
|
35
|
-
private parseExplicitRequest;
|
|
36
|
-
private getFromProjectConfig;
|
|
37
|
-
private inferFromContext;
|
|
38
|
-
private isMetaAgentDiscussion;
|
|
39
15
|
private safeListPrimaryAgents;
|
|
40
|
-
private createResult;
|
|
41
16
|
}
|
|
42
|
-
export {};
|