@hongmaple0820/scale-engine 0.7.1 → 0.8.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 +31 -5
- package/dist/adapters/ClaudeCodeAdapter.js +5 -3
- package/dist/adapters/ClaudeCodeAdapter.js.map +1 -1
- package/dist/adapters/CodexAdapter.js +5 -3
- package/dist/adapters/CodexAdapter.js.map +1 -1
- package/dist/adapters/CursorAdapter.js +5 -3
- package/dist/adapters/CursorAdapter.js.map +1 -1
- package/dist/adapters/GeminiAdapter.js +5 -3
- package/dist/adapters/GeminiAdapter.js.map +1 -1
- package/dist/adapters/HermesAdapter.js +5 -3
- package/dist/adapters/HermesAdapter.js.map +1 -1
- package/dist/adapters/OpenClawAdapter.js +5 -3
- package/dist/adapters/OpenClawAdapter.js.map +1 -1
- package/dist/adapters/OpenCodeAdapter.js +5 -3
- package/dist/adapters/OpenCodeAdapter.js.map +1 -1
- package/dist/adapters/QCoderAdapter.js +5 -3
- package/dist/adapters/QCoderAdapter.js.map +1 -1
- package/dist/adapters/TraeAdapter.js +5 -3
- package/dist/adapters/TraeAdapter.js.map +1 -1
- package/dist/adapters/VSCAdapter.js +5 -3
- package/dist/adapters/VSCAdapter.js.map +1 -1
- package/dist/adapters/WorkBuddyAdapter.js +5 -3
- package/dist/adapters/WorkBuddyAdapter.js.map +1 -1
- package/dist/agents/AgentChannel.d.ts +43 -0
- package/dist/agents/AgentChannel.js +136 -0
- package/dist/agents/AgentChannel.js.map +1 -0
- package/dist/agents/AgentCoordinator.d.ts +29 -0
- package/dist/agents/AgentCoordinator.js +136 -0
- package/dist/agents/AgentCoordinator.js.map +1 -0
- package/dist/agents/AgentDispatcher.d.ts +24 -0
- package/dist/agents/AgentDispatcher.js +112 -0
- package/dist/agents/AgentDispatcher.js.map +1 -0
- package/dist/agents/AgentManager.d.ts +14 -0
- package/dist/agents/AgentManager.js +85 -0
- package/dist/agents/AgentManager.js.map +1 -0
- package/dist/agents/AgentPool.d.ts +59 -0
- package/dist/agents/AgentPool.js +192 -0
- package/dist/agents/AgentPool.js.map +1 -0
- package/dist/agents/AgentRegistry.d.ts +20 -0
- package/dist/agents/AgentRegistry.js +36 -0
- package/dist/agents/AgentRegistry.js.map +1 -0
- package/dist/agents/AgentSourceLoader.d.ts +73 -0
- package/dist/agents/AgentSourceLoader.js +101 -0
- package/dist/agents/AgentSourceLoader.js.map +1 -0
- package/dist/agents/IAgent.d.ts +53 -0
- package/dist/agents/IAgent.js +4 -0
- package/dist/agents/IAgent.js.map +1 -0
- package/dist/agents/definitions/debugger.d.ts +2 -0
- package/dist/agents/definitions/debugger.js +6 -0
- package/dist/agents/definitions/debugger.js.map +1 -0
- package/dist/agents/definitions/doc-writer.d.ts +2 -0
- package/dist/agents/definitions/doc-writer.js +6 -0
- package/dist/agents/definitions/doc-writer.js.map +1 -0
- package/dist/agents/definitions/implementer.d.ts +2 -0
- package/dist/agents/definitions/implementer.js +6 -0
- package/dist/agents/definitions/implementer.js.map +1 -0
- package/dist/agents/definitions/planner.d.ts +2 -0
- package/dist/agents/definitions/planner.js +6 -0
- package/dist/agents/definitions/planner.js.map +1 -0
- package/dist/agents/definitions/researcher.d.ts +2 -0
- package/dist/agents/definitions/researcher.js +6 -0
- package/dist/agents/definitions/researcher.js.map +1 -0
- package/dist/agents/definitions/reviewer.d.ts +2 -0
- package/dist/agents/definitions/reviewer.js +6 -0
- package/dist/agents/definitions/reviewer.js.map +1 -0
- package/dist/agents/definitions/security.d.ts +2 -0
- package/dist/agents/definitions/security.js +6 -0
- package/dist/agents/definitions/security.js.map +1 -0
- package/dist/agents/definitions/tester.d.ts +2 -0
- package/dist/agents/definitions/tester.js +6 -0
- package/dist/agents/definitions/tester.js.map +1 -0
- package/dist/agents/index.d.ts +23 -0
- package/dist/agents/index.js +44 -0
- package/dist/agents/index.js.map +1 -0
- package/dist/agents/profiles.d.ts +26 -0
- package/dist/agents/profiles.js +197 -0
- package/dist/agents/profiles.js.map +1 -0
- package/dist/agents/types.d.ts +262 -0
- package/dist/agents/types.js +4 -0
- package/dist/agents/types.js.map +1 -0
- package/dist/api/cli.js +121 -3
- package/dist/api/cli.js.map +1 -1
- package/dist/api/doctor.js +0 -2
- package/dist/api/doctor.js.map +1 -1
- package/dist/api/mcp.js +0 -5
- package/dist/api/mcp.js.map +1 -1
- package/dist/artifact/fsm.js +3 -5
- package/dist/artifact/fsm.js.map +1 -1
- package/dist/artifact/sqliteStore.js +1 -14
- package/dist/artifact/sqliteStore.js.map +1 -1
- package/dist/artifact/store.js +2 -4
- package/dist/artifact/store.js.map +1 -1
- package/dist/artifact/types.d.ts +94 -1
- package/dist/artifact/types.js +0 -3
- package/dist/artifact/types.js.map +1 -1
- package/dist/context/AntiPatternRegistry.d.ts +38 -0
- package/dist/context/AntiPatternRegistry.js +203 -0
- package/dist/context/AntiPatternRegistry.js.map +1 -0
- package/dist/context/CavemanCompressor.d.ts +20 -0
- package/dist/context/CavemanCompressor.js +14 -0
- package/dist/context/CavemanCompressor.js.map +1 -0
- package/dist/context/ContextBuilder.js +132 -4
- package/dist/context/ContextBuilder.js.map +1 -1
- package/dist/context/SessionStartSequence.d.ts +54 -0
- package/dist/context/SessionStartSequence.js +153 -0
- package/dist/context/SessionStartSequence.js.map +1 -0
- package/dist/core/container.js +4 -2
- package/dist/core/container.js.map +1 -1
- package/dist/core/eventBus.js +5 -6
- package/dist/core/eventBus.js.map +1 -1
- package/dist/dashboard/DashboardServer.d.ts +17 -0
- package/dist/dashboard/DashboardServer.js +53 -7
- package/dist/dashboard/DashboardServer.js.map +1 -1
- package/dist/dashboard/index.d.ts +2 -0
- package/dist/dashboard/index.js +2 -0
- package/dist/dashboard/index.js.map +1 -0
- package/dist/dashboard/server.d.ts +52 -0
- package/dist/dashboard/server.js +83 -0
- package/dist/dashboard/server.js.map +1 -0
- package/dist/evolution/AutoDefectCreator.js +2 -4
- package/dist/evolution/AutoDefectCreator.js.map +1 -1
- package/dist/evolution/BehaviorTracker.js +3 -5
- package/dist/evolution/BehaviorTracker.js.map +1 -1
- package/dist/evolution/EvolutionEngine.js +3 -14
- package/dist/evolution/EvolutionEngine.js.map +1 -1
- package/dist/evolution/EvolutionEvaluator.js +1 -4
- package/dist/evolution/EvolutionEvaluator.js.map +1 -1
- package/dist/evolution/LessonValidator.js +0 -4
- package/dist/evolution/LessonValidator.js.map +1 -1
- package/dist/evolution/PatternExtractor.d.ts +40 -0
- package/dist/evolution/PatternExtractor.js +83 -0
- package/dist/evolution/PatternExtractor.js.map +1 -0
- package/dist/evolution/SkillCreator.d.ts +75 -0
- package/dist/evolution/SkillCreator.js +219 -0
- package/dist/evolution/SkillCreator.js.map +1 -0
- package/dist/fsm/FSMAgentBridge.js +11 -13
- package/dist/fsm/FSMAgentBridge.js.map +1 -1
- package/dist/guardrails/DetectorEnhanced.js +32 -30
- package/dist/guardrails/DetectorEnhanced.js.map +1 -1
- package/dist/guardrails/GateEvaluator.d.ts +18 -0
- package/dist/guardrails/GateEvaluator.js +129 -0
- package/dist/guardrails/GateEvaluator.js.map +1 -0
- package/dist/guardrails/Gateway.js +6 -7
- package/dist/guardrails/Gateway.js.map +1 -1
- package/dist/guardrails/ReviewEnforcer.d.ts +52 -0
- package/dist/guardrails/ReviewEnforcer.js +117 -0
- package/dist/guardrails/ReviewEnforcer.js.map +1 -0
- package/dist/guardrails/advancedDetectors.js +33 -31
- package/dist/guardrails/advancedDetectors.js.map +1 -1
- package/dist/guardrails/detectors.js +76 -16
- package/dist/guardrails/detectors.js.map +1 -1
- package/dist/hooks/HookDeployer.js +2 -3
- package/dist/hooks/HookDeployer.js.map +1 -1
- package/dist/hooks/HookGeneratorEnhanced.js +2 -3
- package/dist/hooks/HookGeneratorEnhanced.js.map +1 -1
- package/dist/index.d.ts +20 -2
- package/dist/index.js +19 -2
- package/dist/index.js.map +1 -1
- package/dist/knowledge/KnowledgeBase.d.ts +26 -0
- package/dist/knowledge/KnowledgeBase.js +109 -8
- package/dist/knowledge/KnowledgeBase.js.map +1 -1
- package/dist/knowledge/SQLiteKnowledgeBase.js +1 -3
- package/dist/knowledge/SQLiteKnowledgeBase.js.map +1 -1
- package/dist/knowledge/UbiquitousLanguageManager.d.ts +49 -0
- package/dist/knowledge/UbiquitousLanguageManager.js +133 -0
- package/dist/knowledge/UbiquitousLanguageManager.js.map +1 -0
- package/dist/routing/ModelRouter.js +0 -2
- package/dist/routing/ModelRouter.js.map +1 -1
- package/dist/skills/ExternalSkills.d.ts +3 -0
- package/dist/skills/ExternalSkills.js +20 -0
- package/dist/skills/ExternalSkills.js.map +1 -0
- package/dist/skills/GrillingSessionSkill.d.ts +65 -0
- package/dist/skills/GrillingSessionSkill.js +113 -0
- package/dist/skills/GrillingSessionSkill.js.map +1 -0
- package/dist/skills/GrillingTemplates.d.ts +7 -0
- package/dist/skills/GrillingTemplates.js +38 -0
- package/dist/skills/GrillingTemplates.js.map +1 -0
- package/dist/skills/SkillDiscovery.d.ts +45 -20
- package/dist/skills/SkillDiscovery.js +201 -117
- package/dist/skills/SkillDiscovery.js.map +1 -1
- package/dist/skills/SkillExecutor.js +1 -3
- package/dist/skills/SkillExecutor.js.map +1 -1
- package/dist/skills/SkillInstaller.d.ts +40 -0
- package/dist/skills/SkillInstaller.js +112 -0
- package/dist/skills/SkillInstaller.js.map +1 -0
- package/dist/skills/SkillRegistry.js +1 -2
- package/dist/skills/SkillRegistry.js.map +1 -1
- package/dist/skills/TriggerEngine.js +3 -5
- package/dist/skills/TriggerEngine.js.map +1 -1
- package/dist/skills/index.d.ts +3 -0
- package/dist/skills/index.js +3 -0
- package/dist/skills/index.js.map +1 -1
- package/dist/tasks/IssueTriageFSM.d.ts +26 -0
- package/dist/tasks/IssueTriageFSM.js +107 -0
- package/dist/tasks/IssueTriageFSM.js.map +1 -0
- package/dist/tasks/TaskEngine.js +1 -5
- package/dist/tasks/TaskEngine.js.map +1 -1
- package/dist/workflows/DAGBuilder.d.ts +52 -0
- package/dist/workflows/DAGBuilder.js +169 -0
- package/dist/workflows/DAGBuilder.js.map +1 -0
- package/dist/workflows/WorkflowExecutor.js +2 -4
- package/dist/workflows/WorkflowExecutor.js.map +1 -1
- package/dist/workflows/WorkflowOrchestrator.d.ts +48 -0
- package/dist/workflows/WorkflowOrchestrator.js +181 -0
- package/dist/workflows/WorkflowOrchestrator.js.map +1 -0
- package/dist/workflows/index.d.ts +2 -4
- package/dist/workflows/index.js +4 -4
- package/dist/workflows/index.js.map +1 -1
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
|
@@ -12,6 +12,8 @@ export { TaskEngine } from './tasks/TaskEngine.js';
|
|
|
12
12
|
export { KnowledgeBase } from './knowledge/KnowledgeBase.js';
|
|
13
13
|
export { SQLiteKnowledgeBase } from './knowledge/SQLiteKnowledgeBase.js';
|
|
14
14
|
export type { IKnowledgeBase } from './knowledge/KnowledgeBase.js';
|
|
15
|
+
export { UbiquitousLanguageManager, createUbiquitousLanguageManager } from './knowledge/UbiquitousLanguageManager.js';
|
|
16
|
+
export type { IUbiquitousLanguageManager } from './knowledge/UbiquitousLanguageManager.js';
|
|
15
17
|
export { BehaviorTracker } from './evolution/BehaviorTracker.js';
|
|
16
18
|
export type { IBehaviorTracker, SessionMetrics, AutoEvolveConfig } from './evolution/BehaviorTracker.js';
|
|
17
19
|
export { LessonExtractor, RuleProposer, HookGenerator, EvolutionEngine } from './evolution/EvolutionEngine.js';
|
|
@@ -45,7 +47,23 @@ export { ModelRouter, DEFAULT_MODELS } from './routing/ModelRouter.js';
|
|
|
45
47
|
export { ClaudeCodeAdapter, CodexAdapter, OpenCodeAdapter, CursorAdapter, GeminiAdapter, OpenClawAdapter, HermesAdapter, TraeAdapter, WorkBuddyAdapter, VSCAdapter, QCoderAdapter, createAdapter, SUPPORTED_AGENTS, } from './adapters/index.js';
|
|
46
48
|
export type { IAgentAdapter, AdapterConfig, InitResult, SettingsJson, HookEntry } from './adapters/ClaudeCodeAdapter.js';
|
|
47
49
|
export { WORKFLOW_PRESETS, getWorkflowPreset, listWorkflowPresets, getPresetsByScenario, BASIC_DEV, TDD_DEV, BUG_FIX, SDD, CODE_REVIEW, SECURITY_AUDIT, RALPH_LOOP, RAPID_PROTO, MASSIVE_REFACTOR, PARALLEL_EXEC, } from './workflows/presets.js';
|
|
48
|
-
export {
|
|
49
|
-
export {
|
|
50
|
+
export { AgentManager, initializeAgentManager, registerAllAgents, ALL_AGENTS, AGENT_MANAGER_TOKEN, } from './agents/index.js';
|
|
51
|
+
export type { IAgentManager, IAgent, AgentDefinition, AgentTaskContext, AgentResult, AgentCapability, } from './agents/index.js';
|
|
52
|
+
export { PatternExtractor } from './evolution/PatternExtractor.js';
|
|
53
|
+
export type { Pattern, PatternStep, IPatternExtractor } from './evolution/PatternExtractor.js';
|
|
54
|
+
export { SkillCreator } from './evolution/SkillCreator.js';
|
|
55
|
+
export type { SkillProposal, SkillStep, ISkillCreator, SkillExample, SkillCriteria, SkillCandidate } from './evolution/SkillCreator.js';
|
|
56
|
+
export { GrillingSessionManager } from './skills/GrillingSessionSkill.js';
|
|
57
|
+
export type { GrillingSession, GrillingQuestion, GrillingOption, GrillingConclusion } from './skills/GrillingSessionSkill.js';
|
|
58
|
+
export { REQUIREMENT_CLARITY_TREE, DESIGN_DEPTH_TREE, TECH_SELECTION_TREE } from './skills/GrillingTemplates.js';
|
|
59
|
+
export { IssueTriageFSM, ISSUE_TRIAGE_MACHINE } from './tasks/IssueTriageFSM.js';
|
|
60
|
+
export type { IssueRole, IssueState, IssueTriageTransition, TriageResult } from './tasks/IssueTriageFSM.js';
|
|
61
|
+
export { CavemanCompressor } from './context/CavemanCompressor.js';
|
|
62
|
+
export type { CavemanConfig } from './context/CavemanCompressor.js';
|
|
63
|
+
export { DEFAULT_SYMBOL_MAP, DEFAULT_PRESERVE_TERMS } from './context/CavemanCompressor.js';
|
|
64
|
+
export { AntiPatternRegistry, createAntiPatternRegistry } from './context/AntiPatternRegistry.js';
|
|
65
|
+
export type { AntiPattern, AntiPatternMatch, IAntiPatternRegistry } from './context/AntiPatternRegistry.js';
|
|
50
66
|
export { DashboardServer } from './dashboard/DashboardServer.js';
|
|
51
67
|
export type { DashboardState, ArtifactTreeNode, GateSummary, DetectorStatSummary, RecentEvent } from './dashboard/DashboardServer.js';
|
|
68
|
+
export { Doctor } from './api/doctor.js';
|
|
69
|
+
export { ScaleMCPServer } from './api/mcp.js';
|
package/dist/index.js
CHANGED
|
@@ -17,6 +17,8 @@ export { TaskEngine } from './tasks/TaskEngine.js';
|
|
|
17
17
|
// Knowledge Base
|
|
18
18
|
export { KnowledgeBase } from './knowledge/KnowledgeBase.js';
|
|
19
19
|
export { SQLiteKnowledgeBase } from './knowledge/SQLiteKnowledgeBase.js';
|
|
20
|
+
// Ubiquitous Language (mattpocock/skills style)
|
|
21
|
+
export { UbiquitousLanguageManager, createUbiquitousLanguageManager } from './knowledge/UbiquitousLanguageManager.js';
|
|
20
22
|
// Evolution
|
|
21
23
|
export { BehaviorTracker } from './evolution/BehaviorTracker.js';
|
|
22
24
|
export { LessonExtractor, RuleProposer, HookGenerator, EvolutionEngine } from './evolution/EvolutionEngine.js';
|
|
@@ -49,9 +51,24 @@ export { ModelRouter, DEFAULT_MODELS } from './routing/ModelRouter.js';
|
|
|
49
51
|
export { ClaudeCodeAdapter, CodexAdapter, OpenCodeAdapter, CursorAdapter, GeminiAdapter, OpenClawAdapter, HermesAdapter, TraeAdapter, WorkBuddyAdapter, VSCAdapter, QCoderAdapter, createAdapter, SUPPORTED_AGENTS, } from './adapters/index.js';
|
|
50
52
|
// Workflow Presets
|
|
51
53
|
export { WORKFLOW_PRESETS, getWorkflowPreset, listWorkflowPresets, getPresetsByScenario, BASIC_DEV, TDD_DEV, BUG_FIX, SDD, CODE_REVIEW, SECURITY_AUDIT, RALPH_LOOP, RAPID_PROTO, MASSIVE_REFACTOR, PARALLEL_EXEC, } from './workflows/presets.js';
|
|
54
|
+
// Agents (Phase 1)
|
|
55
|
+
export { AgentManager, initializeAgentManager, registerAllAgents, ALL_AGENTS, AGENT_MANAGER_TOKEN, } from './agents/index.js';
|
|
56
|
+
// Evolution Positive Learning (Phase 4)
|
|
57
|
+
export { PatternExtractor } from './evolution/PatternExtractor.js';
|
|
58
|
+
export { SkillCreator } from './evolution/SkillCreator.js';
|
|
59
|
+
// Grilling Session (Phase 11 - mattpoclock/skills style)
|
|
60
|
+
export { GrillingSessionManager } from './skills/GrillingSessionSkill.js';
|
|
61
|
+
export { REQUIREMENT_CLARITY_TREE, DESIGN_DEPTH_TREE, TECH_SELECTION_TREE } from './skills/GrillingTemplates.js';
|
|
62
|
+
// Issue Triage FSM (Phase 12 - mattpoclock/skills style)
|
|
63
|
+
export { IssueTriageFSM, ISSUE_TRIAGE_MACHINE } from './tasks/IssueTriageFSM.js';
|
|
64
|
+
// Caveman Compressor (Phase 13 - mattpoclock/skills style)
|
|
65
|
+
export { CavemanCompressor } from './context/CavemanCompressor.js';
|
|
66
|
+
export { DEFAULT_SYMBOL_MAP, DEFAULT_PRESERVE_TERMS } from './context/CavemanCompressor.js';
|
|
67
|
+
// Anti-Pattern Registry (andrej-karpathy-skills style)
|
|
68
|
+
export { AntiPatternRegistry, createAntiPatternRegistry } from './context/AntiPatternRegistry.js';
|
|
69
|
+
// Dashboard (v0.7.0)
|
|
70
|
+
export { DashboardServer } from './dashboard/DashboardServer.js';
|
|
52
71
|
// API
|
|
53
72
|
export { Doctor } from './api/doctor.js';
|
|
54
73
|
export { ScaleMCPServer } from './api/mcp.js';
|
|
55
|
-
// Dashboard (v0.7.0)
|
|
56
|
-
export { DashboardServer } from './dashboard/DashboardServer.js';
|
|
57
74
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,10 +13,36 @@ export declare class KnowledgeBase implements IKnowledgeBase {
|
|
|
13
13
|
private eventBus;
|
|
14
14
|
private entries;
|
|
15
15
|
private seq;
|
|
16
|
+
private documentFrequencies;
|
|
17
|
+
private totalDocuments;
|
|
16
18
|
constructor(eventBus: IEventBus);
|
|
17
19
|
add(input: Omit<KnowledgeEntry, 'id' | 'createdAt' | 'accessCount' | 'relevance'>): Promise<KnowledgeEntry>;
|
|
18
20
|
recall(query: KnowledgeQuery): Promise<KnowledgeEntry[]>;
|
|
19
21
|
recallByVector(text: string, topK: number): Promise<KnowledgeEntry[]>;
|
|
22
|
+
/**
|
|
23
|
+
* Tokenize text into lowercase terms (simple word splitting)
|
|
24
|
+
*/
|
|
25
|
+
private tokenize;
|
|
26
|
+
/**
|
|
27
|
+
* Calculate term frequency (TF) for a term in a document
|
|
28
|
+
*/
|
|
29
|
+
private termFrequency;
|
|
30
|
+
/**
|
|
31
|
+
* Calculate inverse document frequency (IDF) for a term
|
|
32
|
+
*/
|
|
33
|
+
private inverseDocumentFrequency;
|
|
34
|
+
/**
|
|
35
|
+
* Rebuild document frequency cache
|
|
36
|
+
*/
|
|
37
|
+
private rebuildDocumentFrequencies;
|
|
38
|
+
/**
|
|
39
|
+
* Calculate TF-IDF vector for a document
|
|
40
|
+
*/
|
|
41
|
+
private tfidfVector;
|
|
42
|
+
/**
|
|
43
|
+
* Calculate cosine similarity between two term sets
|
|
44
|
+
*/
|
|
45
|
+
private cosineSimilarity;
|
|
20
46
|
markHelpful(id: string, sessionId: string): Promise<void>;
|
|
21
47
|
markUseless(id: string, sessionId: string): Promise<void>;
|
|
22
48
|
verify(id: string, verifiedBy: string): Promise<void>;
|
|
@@ -1,12 +1,14 @@
|
|
|
1
|
-
// SCALE Engine — Knowledge Base (W7 完整实现)
|
|
1
|
+
// SCALE Engine — Knowledge Base (W7 完整实现 + v0.7.2 TF-IDF)
|
|
2
2
|
// 设计参考:docs/03-CORE-MODULES.md §3.4
|
|
3
|
-
|
|
3
|
+
// Phase 3 增强:TF-IDF 文本相似度计算
|
|
4
4
|
export class KnowledgeBase {
|
|
5
|
-
eventBus;
|
|
6
|
-
entries = new Map();
|
|
7
|
-
seq = 0;
|
|
8
5
|
constructor(eventBus) {
|
|
9
6
|
this.eventBus = eventBus;
|
|
7
|
+
this.entries = new Map();
|
|
8
|
+
this.seq = 0;
|
|
9
|
+
// TF-IDF cache
|
|
10
|
+
this.documentFrequencies = new Map();
|
|
11
|
+
this.totalDocuments = 0;
|
|
10
12
|
}
|
|
11
13
|
async add(input) {
|
|
12
14
|
const entry = {
|
|
@@ -36,9 +38,108 @@ export class KnowledgeBase {
|
|
|
36
38
|
return results.slice(0, query.limit ?? 10);
|
|
37
39
|
}
|
|
38
40
|
async recallByVector(text, topK) {
|
|
39
|
-
//
|
|
40
|
-
|
|
41
|
-
|
|
41
|
+
// v0.7.2: TF-IDF implementation (Phase 3 enhancement)
|
|
42
|
+
const queryTerms = this.tokenize(text);
|
|
43
|
+
if (queryTerms.length === 0)
|
|
44
|
+
return this.recall({ verifiedOnly: true, limit: topK });
|
|
45
|
+
const scored = [];
|
|
46
|
+
for (const entry of this.entries.values()) {
|
|
47
|
+
// Use title + tags for document representation (contentRef is file path)
|
|
48
|
+
const docText = `${entry.title} ${entry.tags.join(' ')}`;
|
|
49
|
+
const docTerms = this.tokenize(docText);
|
|
50
|
+
const score = this.cosineSimilarity(queryTerms, docTerms);
|
|
51
|
+
if (score > 0)
|
|
52
|
+
scored.push({ entry, score });
|
|
53
|
+
}
|
|
54
|
+
// Fallback to verified recall if no TF-IDF matches
|
|
55
|
+
if (scored.length === 0)
|
|
56
|
+
return this.recall({ verifiedOnly: true, limit: topK });
|
|
57
|
+
// Sort by TF-IDF similarity, then by relevance as tiebreaker
|
|
58
|
+
scored.sort((a, b) => b.score - a.score || b.entry.relevance - a.entry.relevance);
|
|
59
|
+
return scored.slice(0, topK).map(s => s.entry);
|
|
60
|
+
}
|
|
61
|
+
// ============================================================================
|
|
62
|
+
// TF-IDF Helper Methods (Phase 3)
|
|
63
|
+
// ============================================================================
|
|
64
|
+
/**
|
|
65
|
+
* Tokenize text into lowercase terms (simple word splitting)
|
|
66
|
+
*/
|
|
67
|
+
tokenize(text) {
|
|
68
|
+
return text
|
|
69
|
+
.toLowerCase()
|
|
70
|
+
.replace(/[^\w\s]/g, ' ')
|
|
71
|
+
.split(/\s+/)
|
|
72
|
+
.filter(t => t.length > 2); // Skip short terms
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Calculate term frequency (TF) for a term in a document
|
|
76
|
+
*/
|
|
77
|
+
termFrequency(term, docTerms) {
|
|
78
|
+
const count = docTerms.filter(t => t === term).length;
|
|
79
|
+
return count / docTerms.length;
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Calculate inverse document frequency (IDF) for a term
|
|
83
|
+
*/
|
|
84
|
+
inverseDocumentFrequency(term) {
|
|
85
|
+
// Update document frequencies if needed
|
|
86
|
+
if (this.documentFrequencies.size === 0 || this.totalDocuments !== this.entries.size) {
|
|
87
|
+
this.rebuildDocumentFrequencies();
|
|
88
|
+
}
|
|
89
|
+
const df = this.documentFrequencies.get(term) ?? 0;
|
|
90
|
+
if (df === 0)
|
|
91
|
+
return 0;
|
|
92
|
+
return Math.log(this.totalDocuments / df);
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Rebuild document frequency cache
|
|
96
|
+
*/
|
|
97
|
+
rebuildDocumentFrequencies() {
|
|
98
|
+
this.documentFrequencies.clear();
|
|
99
|
+
this.totalDocuments = this.entries.size;
|
|
100
|
+
for (const entry of this.entries.values()) {
|
|
101
|
+
// Use title + tags for document representation (contentRef is file path)
|
|
102
|
+
const docText = `${entry.title} ${entry.tags.join(' ')}`;
|
|
103
|
+
const terms = new Set(this.tokenize(docText));
|
|
104
|
+
for (const term of terms) {
|
|
105
|
+
this.documentFrequencies.set(term, (this.documentFrequencies.get(term) ?? 0) + 1);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Calculate TF-IDF vector for a document
|
|
111
|
+
*/
|
|
112
|
+
tfidfVector(terms) {
|
|
113
|
+
const tfidf = new Map();
|
|
114
|
+
const uniqueTerms = new Set(terms);
|
|
115
|
+
for (const term of uniqueTerms) {
|
|
116
|
+
const tf = this.termFrequency(term, terms);
|
|
117
|
+
const idf = this.inverseDocumentFrequency(term);
|
|
118
|
+
if (tf * idf > 0)
|
|
119
|
+
tfidf.set(term, tf * idf);
|
|
120
|
+
}
|
|
121
|
+
return tfidf;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Calculate cosine similarity between two term sets
|
|
125
|
+
*/
|
|
126
|
+
cosineSimilarity(queryTerms, docTerms) {
|
|
127
|
+
const queryVec = this.tfidfVector(queryTerms);
|
|
128
|
+
const docVec = this.tfidfVector(docTerms);
|
|
129
|
+
if (queryVec.size === 0 || docVec.size === 0)
|
|
130
|
+
return 0;
|
|
131
|
+
// Dot product
|
|
132
|
+
let dot = 0;
|
|
133
|
+
for (const [term, weight] of queryVec) {
|
|
134
|
+
if (docVec.has(term))
|
|
135
|
+
dot += weight * docVec.get(term);
|
|
136
|
+
}
|
|
137
|
+
// Magnitudes
|
|
138
|
+
const queryMag = Math.sqrt(Array.from(queryVec.values()).reduce((s, w) => s + w * w, 0));
|
|
139
|
+
const docMag = Math.sqrt(Array.from(docVec.values()).reduce((s, w) => s + w * w, 0));
|
|
140
|
+
if (queryMag === 0 || docMag === 0)
|
|
141
|
+
return 0;
|
|
142
|
+
return dot / (queryMag * docMag);
|
|
42
143
|
}
|
|
43
144
|
async markHelpful(id, sessionId) {
|
|
44
145
|
const entry = this.entries.get(id);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KnowledgeBase.js","sourceRoot":"","sources":["../../src/knowledge/KnowledgeBase.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"KnowledgeBase.js","sourceRoot":"","sources":["../../src/knowledge/KnowledgeBase.ts"],"names":[],"mappings":"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"}
|
|
@@ -29,11 +29,9 @@ CREATE INDEX IF NOT EXISTS idx_kb_verified ON knowledge_entries(verified);
|
|
|
29
29
|
CREATE INDEX IF NOT EXISTS idx_kb_created ON knowledge_entries(created_at);
|
|
30
30
|
`;
|
|
31
31
|
export class SQLiteKnowledgeBase {
|
|
32
|
-
eventBus;
|
|
33
|
-
db;
|
|
34
|
-
seq = 0;
|
|
35
32
|
constructor(eventBus, opts = {}) {
|
|
36
33
|
this.eventBus = eventBus;
|
|
34
|
+
this.seq = 0;
|
|
37
35
|
const dbPath = opts.dbPath ?? '.scale/knowledge.db';
|
|
38
36
|
mkdirSync(dirname(dbPath), { recursive: true });
|
|
39
37
|
this.db = new Database(dbPath);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SQLiteKnowledgeBase.js","sourceRoot":"","sources":["../../src/knowledge/SQLiteKnowledgeBase.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,2DAA2D;AAC3D,2CAA2C;AAE3C,OAAO,QAAQ,MAAM,gBAAgB,CAAA;AAIrC,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AACnC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC,MAAM,SAAS,GAAG;;;;;;;;;;;;;;;;;;;;;;CAsBjB,CAAA;AAmBD,MAAM,OAAO,mBAAmB;
|
|
1
|
+
{"version":3,"file":"SQLiteKnowledgeBase.js","sourceRoot":"","sources":["../../src/knowledge/SQLiteKnowledgeBase.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import type { IEventBus } from "../core/eventBus.js";
|
|
2
|
+
import type { TermDefinition, TermSource, ADRRecord, AmbiguityReport } from "../artifact/types.js";
|
|
3
|
+
export interface IUbiquitousLanguageManager {
|
|
4
|
+
loadContextMd(): Map<string, TermDefinition>;
|
|
5
|
+
updateTerm(term: string, definition: string, source: TermSource): void;
|
|
6
|
+
removeTerm(term: string): void;
|
|
7
|
+
detectAmbiguity(): AmbiguityReport[];
|
|
8
|
+
proposeADR(title: string, context: string, decision: string): ADRRecord;
|
|
9
|
+
acceptADR(id: string): void;
|
|
10
|
+
deprecateADR(id: string, supersededBy: string): void;
|
|
11
|
+
generateContextMd(): string;
|
|
12
|
+
generateADRMarkdown(adr: ADRRecord): string;
|
|
13
|
+
sync(): Promise<void>;
|
|
14
|
+
getTerm(term: string): TermDefinition | undefined;
|
|
15
|
+
getADR(id: string): ADRRecord | undefined;
|
|
16
|
+
listTerms(): TermDefinition[];
|
|
17
|
+
listADRs(): ADRRecord[];
|
|
18
|
+
}
|
|
19
|
+
export declare class UbiquitousLanguageManager implements IUbiquitousLanguageManager {
|
|
20
|
+
private contextMdPath;
|
|
21
|
+
private adrDir;
|
|
22
|
+
private terms;
|
|
23
|
+
private adrs;
|
|
24
|
+
private eventBus;
|
|
25
|
+
private dirty;
|
|
26
|
+
constructor(projectDir: string, eventBus?: IEventBus, contextMdPath?: string, adrDir?: string);
|
|
27
|
+
loadContextMd(): Map<string, TermDefinition>;
|
|
28
|
+
updateTerm(term: string, definition: string, source: TermSource): void;
|
|
29
|
+
removeTerm(term: string): void;
|
|
30
|
+
detectAmbiguity(): AmbiguityReport[];
|
|
31
|
+
getTerm(term: string): TermDefinition | undefined;
|
|
32
|
+
listTerms(): TermDefinition[];
|
|
33
|
+
proposeADR(title: string, context: string, decision: string): ADRRecord;
|
|
34
|
+
acceptADR(id: string): void;
|
|
35
|
+
deprecateADR(id: string, supersededBy: string): void;
|
|
36
|
+
getADR(id: string): ADRRecord | undefined;
|
|
37
|
+
listADRs(): ADRRecord[];
|
|
38
|
+
generateContextMd(): string;
|
|
39
|
+
generateADRMarkdown(adr: ADRRecord): string;
|
|
40
|
+
sync(): Promise<void>;
|
|
41
|
+
private loadFromFiles;
|
|
42
|
+
private loadADRs;
|
|
43
|
+
private parseContextMd;
|
|
44
|
+
private parseADRMarkdown;
|
|
45
|
+
private getNextADRNumber;
|
|
46
|
+
private slugify;
|
|
47
|
+
private ensureDir;
|
|
48
|
+
}
|
|
49
|
+
export declare function createUbiquitousLanguageManager(projectDir: string, eventBus?: IEventBus): IUbiquitousLanguageManager;
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
// SCALE Engine - Ubiquitous Language Manager (mattpocock/skills style)
|
|
2
|
+
import { existsSync, mkdirSync, readFileSync, writeFileSync, readdirSync } from "node:fs";
|
|
3
|
+
import { join, dirname } from "node:path";
|
|
4
|
+
import { logger } from "../core/logger.js";
|
|
5
|
+
export class UbiquitousLanguageManager {
|
|
6
|
+
constructor(projectDir, eventBus, contextMdPath, adrDir) {
|
|
7
|
+
this.terms = new Map();
|
|
8
|
+
this.adrs = new Map();
|
|
9
|
+
this.dirty = false;
|
|
10
|
+
this.contextMdPath = contextMdPath ?? join(projectDir, "CONTEXT.md");
|
|
11
|
+
this.adrDir = adrDir ?? join(projectDir, "docs", "adr");
|
|
12
|
+
this.eventBus = eventBus ?? null;
|
|
13
|
+
this.loadFromFiles();
|
|
14
|
+
}
|
|
15
|
+
loadContextMd() {
|
|
16
|
+
if (!existsSync(this.contextMdPath))
|
|
17
|
+
return this.terms;
|
|
18
|
+
const content = readFileSync(this.contextMdPath, "utf-8");
|
|
19
|
+
this.terms = this.parseContextMd(content);
|
|
20
|
+
logger.info({ count: this.terms.size }, "Loaded terms");
|
|
21
|
+
return this.terms;
|
|
22
|
+
}
|
|
23
|
+
updateTerm(term, definition, source) {
|
|
24
|
+
const existing = this.terms.get(term);
|
|
25
|
+
this.terms.set(term, { term, definition, examples: existing?.examples ?? [], aliases: existing?.aliases ?? [], lastUpdated: Date.now(), source });
|
|
26
|
+
this.dirty = true;
|
|
27
|
+
this.eventBus?.emit("term.updated", { term, source });
|
|
28
|
+
}
|
|
29
|
+
removeTerm(term) { this.terms.delete(term); this.dirty = true; }
|
|
30
|
+
detectAmbiguity() {
|
|
31
|
+
const reports = [];
|
|
32
|
+
for (const [term, def] of this.terms) {
|
|
33
|
+
for (const alias of def.aliases) {
|
|
34
|
+
const aliasDef = this.terms.get(alias);
|
|
35
|
+
if (aliasDef && aliasDef.definition !== def.definition)
|
|
36
|
+
reports.push({ term, definitions: [def.definition, aliasDef.definition], sources: [def.source, aliasDef.source] });
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
if (reports.length)
|
|
40
|
+
this.eventBus?.emit("term.ambiguity_detected", { reports });
|
|
41
|
+
return reports;
|
|
42
|
+
}
|
|
43
|
+
getTerm(term) { return this.terms.get(term); }
|
|
44
|
+
listTerms() { return Array.from(this.terms.values()); }
|
|
45
|
+
proposeADR(title, context, decision) {
|
|
46
|
+
const now = Date.now();
|
|
47
|
+
const num = this.getNextADRNumber();
|
|
48
|
+
const id = "ADR-" + num + "-" + this.slugify(title);
|
|
49
|
+
const adr = { id, title, status: "proposed", context, decision, consequences: "", createdAt: now, updatedAt: now };
|
|
50
|
+
this.adrs.set(id, adr);
|
|
51
|
+
this.dirty = true;
|
|
52
|
+
this.eventBus?.emit("adr.proposed", { adrId: id });
|
|
53
|
+
return adr;
|
|
54
|
+
}
|
|
55
|
+
acceptADR(id) {
|
|
56
|
+
const adr = this.adrs.get(id);
|
|
57
|
+
if (!adr || adr.status !== "proposed")
|
|
58
|
+
return;
|
|
59
|
+
adr.status = "accepted";
|
|
60
|
+
adr.updatedAt = Date.now();
|
|
61
|
+
this.dirty = true;
|
|
62
|
+
this.eventBus?.emit("adr.accepted", { adrId: id });
|
|
63
|
+
}
|
|
64
|
+
deprecateADR(id, supersededBy) {
|
|
65
|
+
const adr = this.adrs.get(id);
|
|
66
|
+
if (!adr || adr.status !== "accepted")
|
|
67
|
+
return;
|
|
68
|
+
adr.status = "deprecated";
|
|
69
|
+
adr.supersededBy = supersededBy;
|
|
70
|
+
adr.updatedAt = Date.now();
|
|
71
|
+
this.dirty = true;
|
|
72
|
+
this.eventBus?.emit("adr.deprecated", { adrId: id, supersededBy });
|
|
73
|
+
}
|
|
74
|
+
getADR(id) { return this.adrs.get(id); }
|
|
75
|
+
listADRs() { return Array.from(this.adrs.values()); }
|
|
76
|
+
generateContextMd() {
|
|
77
|
+
const lines = ["# CONTEXT.md", "", "| Term | Definition | Examples | Aliases | Source |", "|------|------------|----------|---------|--------|"];
|
|
78
|
+
for (const t of this.terms.values())
|
|
79
|
+
lines.push("| " + t.term + " | " + t.definition + " | " + (t.examples.join("; ") || "-") + " | " + (t.aliases.join(", ") || "-") + " | " + t.source + " |");
|
|
80
|
+
return lines.join("\n");
|
|
81
|
+
}
|
|
82
|
+
generateADRMarkdown(adr) {
|
|
83
|
+
return "# " + adr.id + ": " + adr.title + "\n\n**Status**: " + adr.status + "\n\n## Context\n" + adr.context + "\n\n## Decision\n" + adr.decision;
|
|
84
|
+
}
|
|
85
|
+
async sync() {
|
|
86
|
+
if (!this.dirty)
|
|
87
|
+
return;
|
|
88
|
+
this.ensureDir(dirname(this.contextMdPath));
|
|
89
|
+
writeFileSync(this.contextMdPath, this.generateContextMd(), "utf-8");
|
|
90
|
+
this.ensureDir(this.adrDir);
|
|
91
|
+
for (const adr of this.adrs.values())
|
|
92
|
+
writeFileSync(join(this.adrDir, adr.id + ".md"), this.generateADRMarkdown(adr), "utf-8");
|
|
93
|
+
this.dirty = false;
|
|
94
|
+
}
|
|
95
|
+
loadFromFiles() { this.loadContextMd(); this.loadADRs(); }
|
|
96
|
+
loadADRs() {
|
|
97
|
+
if (!existsSync(this.adrDir))
|
|
98
|
+
return;
|
|
99
|
+
for (const file of readdirSync(this.adrDir)) {
|
|
100
|
+
if (!file.endsWith(".md") || !file.startsWith("ADR-"))
|
|
101
|
+
continue;
|
|
102
|
+
const adr = this.parseADRMarkdown(readFileSync(join(this.adrDir, file), "utf-8"), file.replace(".md", ""));
|
|
103
|
+
if (adr)
|
|
104
|
+
this.adrs.set(adr.id, adr);
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
parseContextMd(content) {
|
|
108
|
+
const terms = new Map();
|
|
109
|
+
for (const line of content.split("\n")) {
|
|
110
|
+
if (line.startsWith("|") && !line.includes("Term") && !line.includes("------")) {
|
|
111
|
+
const parts = line.split("|").map(p => p.trim()).filter(Boolean);
|
|
112
|
+
if (parts.length >= 5)
|
|
113
|
+
terms.set(parts[0], { term: parts[0], definition: parts[1], examples: parts[2] === "-" ? [] : parts[2].split("; "), aliases: parts[3] === "-" ? [] : parts[3].split(", "), lastUpdated: Date.now(), source: parts[4] || "user-defined" });
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
return terms;
|
|
117
|
+
}
|
|
118
|
+
parseADRMarkdown(content, id) {
|
|
119
|
+
const titleMatch = /^# ADR-\d+: (.+)$/m.exec(content);
|
|
120
|
+
const statusMatch = /\*\*Status\*\*:\s*(\w+)/.exec(content);
|
|
121
|
+
return { id, title: titleMatch?.[1] ?? "Untitled", status: statusMatch?.[1] ?? "proposed", context: "", decision: "", consequences: "", createdAt: Date.now(), updatedAt: Date.now() };
|
|
122
|
+
}
|
|
123
|
+
getNextADRNumber() { let max = 0; for (const adr of this.adrs.values()) {
|
|
124
|
+
const m = /^ADR-(\d+)/.exec(adr.id);
|
|
125
|
+
if (m)
|
|
126
|
+
max = Math.max(max, parseInt(m[1], 10));
|
|
127
|
+
} return max + 1; }
|
|
128
|
+
slugify(title) { return title.toLowerCase().replace(/[^\w\s-]/g, "").replace(/\s+/g, "-").slice(0, 50); }
|
|
129
|
+
ensureDir(path) { if (!existsSync(path))
|
|
130
|
+
mkdirSync(path, { recursive: true }); }
|
|
131
|
+
}
|
|
132
|
+
export function createUbiquitousLanguageManager(projectDir, eventBus) { return new UbiquitousLanguageManager(projectDir, eventBus); }
|
|
133
|
+
//# sourceMappingURL=UbiquitousLanguageManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UbiquitousLanguageManager.js","sourceRoot":"","sources":["../../src/knowledge/UbiquitousLanguageManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,8 +9,6 @@ export const DEFAULT_MODELS = {
|
|
|
9
9
|
local: { tier: 'local', name: 'local-llm', maxTokens: 32_000, costPerMToken: 0.0 },
|
|
10
10
|
};
|
|
11
11
|
export class ModelRouter {
|
|
12
|
-
eventBus;
|
|
13
|
-
models;
|
|
14
12
|
constructor(eventBus, models) {
|
|
15
13
|
this.eventBus = eventBus;
|
|
16
14
|
this.models = { ...DEFAULT_MODELS, ...models };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModelRouter.js","sourceRoot":"","sources":["../../src/routing/ModelRouter.ts"],"names":[],"mappings":"AAAA,mCAAmC;AACnC,cAAc;AACd,qCAAqC;AAGrC,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAW1C,MAAM,CAAC,MAAM,cAAc,GAAmC;IAC5D,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE;IACrF,QAAQ,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,EAAE;IAC7F,QAAQ,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE;IAC5F,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,EAAE;CACnF,CAAA;AAgBD,MAAM,OAAO,WAAW;
|
|
1
|
+
{"version":3,"file":"ModelRouter.js","sourceRoot":"","sources":["../../src/routing/ModelRouter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export function registerExternalSkills(registry, eventBus) {
|
|
2
|
+
const skills = [
|
|
3
|
+
{ id: 'web-access', name: 'Web Access', description: 'CDP browser automation', domain: 'execution', triggers: [{ type: 'taskType', value: ['web-scraping'], weight: 1.0 }], execution: { type: 'skill-file', config: { skillPath: '~/.claude/skills/web-access/SKILL.md' } }, priority: 85, installed: true },
|
|
4
|
+
{ id: 'playwright', name: 'Playwright', description: 'CLI browser automation', domain: 'execution', triggers: [{ type: 'taskType', value: ['e2e-testing'], weight: 0.9 }], execution: { type: 'skill-file', config: { skillPath: '~/.claude/skills/playwright/SKILL.md' } }, priority: 75, installed: true },
|
|
5
|
+
{ id: 'playwright-interactive', name: 'Playwright Interactive', description: 'Persistent session UI debug', domain: 'verification', triggers: [{ type: 'taskType', value: ['ui-debugging'], weight: 0.95 }], execution: { type: 'skill-file', config: { skillPath: '~/.claude/skills/playwright-interactive/SKILL.md' } }, priority: 80, installed: true },
|
|
6
|
+
{ id: 'cua', name: 'CUA', description: 'Computer use agent', domain: 'execution', triggers: [{ type: 'taskType', value: ['desktop-automation'], weight: 1.0 }], execution: { type: 'cli-command', config: { command: 'npx @anthropic/mcp-cua' } }, priority: 90, installed: false, source: 'https://github.com/trycua/cua' },
|
|
7
|
+
{ id: 'awesome-design-md', name: 'Awesome Design', description: 'Brand design specs', domain: 'planning', triggers: [{ type: 'taskType', value: ['ui-design'], weight: 1.0 }], execution: { type: 'skill-file', config: { skillPath: '~/.claude/skills/awesome-design-md/SKILL.md' } }, priority: 88, installed: true },
|
|
8
|
+
{ id: 'ui-ux-pro-max', name: 'UI/UX Pro Max', description: 'UX guidelines database', domain: 'planning', triggers: [{ type: 'taskType', value: ['ui-design'], weight: 0.95 }], execution: { type: 'skill-file', config: { skillPath: '~/.claude/skills/ui-ux-pro-max/SKILL.md' } }, priority: 85, installed: true },
|
|
9
|
+
{ id: 'graphify', name: 'Graphify', description: 'Knowledge graph generator', domain: 'context', triggers: [{ type: 'taskType', value: ['knowledge-graph'], weight: 1.0 }], execution: { type: 'skill-file', config: { skillPath: '~/.claude/skills/graphify/SKILL.md' } }, priority: 90, installed: true },
|
|
10
|
+
// 未安装技能(SkillInstaller 可交互式安装)
|
|
11
|
+
{ id: 'fireworks-tech-graph', name: 'Fireworks Tech Graph', description: 'Tech flow diagrams', domain: 'planning', triggers: [{ type: 'taskType', value: ['diagram'], weight: 1.0 }], execution: { type: 'skill-file', config: { skillPath: '~/.claude/skills/fireworks-tech-graph/SKILL.md' } }, priority: 82, installed: false, source: 'https://github.com/yizhiyanhua-ai/fireworks-tech-graph' },
|
|
12
|
+
{ id: 'excalidraw-diagram-generator', name: 'Excalidraw Generator', description: 'Hand-drawn style diagrams', domain: 'planning', triggers: [{ type: 'taskType', value: ['sketch-diagram'], weight: 0.9 }], execution: { type: 'skill-file', config: { skillPath: '~/.claude/skills/excalidraw-diagram-generator/SKILL.md' } }, priority: 78, installed: false, source: 'https://github.com/github/awesome-copilot/tree/main/skills/excalidraw-diagram-generator' },
|
|
13
|
+
{ id: 'architecture-diagram-generator', name: 'Architecture Diagram', description: 'System architecture diagrams', domain: 'planning', triggers: [{ type: 'taskType', value: ['architecture-diagram'], weight: 1.0 }], execution: { type: 'skill-file', config: { skillPath: '~/.claude/skills/architecture-diagram-generator/SKILL.md' } }, priority: 85, installed: false, source: 'https://github.com/Cocoon-AI/architecture-diagram-generator' },
|
|
14
|
+
{ id: 'hyperframes', name: 'Hyperframes', description: 'HeyGen video generation', domain: 'execution', triggers: [{ type: 'taskType', value: ['video-generation'], weight: 1.0 }], execution: { type: 'cli-command', config: { command: 'npx @heygen/hyperframes' } }, priority: 75, installed: false, source: 'https://github.com/heygen-com/hyperframes' },
|
|
15
|
+
{ id: 'guizang-ppt-skill', name: 'Guizang PPT', description: 'PPT auto generation', domain: 'execution', triggers: [{ type: 'taskType', value: ['ppt-generation'], weight: 1.0 }], execution: { type: 'skill-file', config: { skillPath: '~/.claude/skills/guizang-ppt-skill/SKILL.md' } }, priority: 70, installed: false, source: 'https://github.com/op7418/guizang-ppt-skill' },
|
|
16
|
+
];
|
|
17
|
+
registry.registerBatch(skills);
|
|
18
|
+
eventBus.emit('external-skills.registered', { count: skills.length });
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=ExternalSkills.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExternalSkills.js","sourceRoot":"","sources":["../../src/skills/ExternalSkills.ts"],"names":[],"mappings":"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"}
|